Set default FlowRule.grade to RuleConstant.FLOW_GRADE_QPS

This commit is contained in:
Carpenter Lee 2018-07-27 17:50:03 +08:00
parent d727f1cfb0
commit 5d5b19e9d7
5 changed files with 16 additions and 11 deletions

View File

@ -124,7 +124,7 @@ public class AuthorityRuleManager {
Map<String, List<AuthorityRule>> newRuleMap = new ConcurrentHashMap<String, List<AuthorityRule>>();
for (AuthorityRule rule : list) {
if (StringUtil.isBlank(rule.getLimitApp())) {
rule.setLimitApp(FlowRule.DEFAULT);
rule.setLimitApp(FlowRule.LIMIT_APP_DEFAULT);
}
String identity = rule.getResource();

View File

@ -143,7 +143,7 @@ public class DegradeRuleManager {
for (DegradeRule rule : list) {
if (StringUtil.isBlank(rule.getLimitApp())) {
rule.setLimitApp(FlowRule.DEFAULT);
rule.setLimitApp(FlowRule.LIMIT_APP_DEFAULT);
}
String identity = rule.getResource();

View File

@ -40,20 +40,25 @@ import com.alibaba.csp.sentinel.slots.clusterbuilder.ClusterBuilderSlot;
*/
public class FlowRule extends AbstractRule {
public static final String DEFAULT = "default";
public static final String OTHER = "other";
public static final String LIMIT_APP_DEFAULT = "default";
public static final String LIMIT_APP_OTHER = "other";
public FlowRule(){
super();
setLimitApp(LIMIT_APP_DEFAULT);
}
/**
* The threshold type of flow control (0: thread count, 1: QPS).
*/
private int grade;
private int grade = RuleConstant.FLOW_GRADE_QPS;
private double count;
/**
* 0为直接限流;1为关联限流;2为链路限流
*/
private int strategy;
private int strategy = RuleConstant.STRATEGY_DIRECT;
private String refResource;
@ -181,7 +186,7 @@ public class FlowRule extends AbstractRule {
return node;
}
} else if (limitApp.equals(DEFAULT)) {
} else if (LIMIT_APP_DEFAULT.equals(limitApp)) {
if (strategy == RuleConstant.STRATEGY_DIRECT) {
return node.getClusterNode();
}
@ -201,7 +206,7 @@ public class FlowRule extends AbstractRule {
return node;
}
} else if (limitApp.equals(OTHER) && FlowRuleManager.isOtherOrigin(origin, getResource())) {
} else if (LIMIT_APP_OTHER.equals(limitApp) && FlowRuleManager.isOtherOrigin(origin, getResource())) {
if (strategy == RuleConstant.STRATEGY_DIRECT) {
return context.getOriginNode();
}

View File

@ -30,9 +30,9 @@ public class FlowRuleComparator implements Comparator<FlowRule> {
return 0;
}
if (FlowRule.DEFAULT.equals(o1.getLimitApp())) {
if (FlowRule.LIMIT_APP_DEFAULT.equals(o1.getLimitApp())) {
return 1;
} else if (FlowRule.DEFAULT.equals(o2.getLimitApp())) {
} else if (FlowRule.LIMIT_APP_DEFAULT.equals(o2.getLimitApp())) {
return -1;
} else {
return 0;

View File

@ -111,7 +111,7 @@ public class FlowRuleManager {
for (FlowRule rule : list) {
if (StringUtil.isBlank(rule.getLimitApp())) {
rule.setLimitApp(FlowRule.DEFAULT);
rule.setLimitApp(FlowRule.LIMIT_APP_DEFAULT);
}
Controller rater = new DefaultController(rule.getCount(), rule.getGrade());