1、降级规则设置
说明:这里的降级规则实际就是断路器的熔断规则。
在Sentinel Dashboard控制台,点击左边菜单【簇点链路】就可以为API端点设置降级规则,如下图所示:
以上设置表示,端点/testA的请求响应时间≥1ms且在5秒的时间窗口内通过的请求数≥5次,则触发降级、断路器打开。
设置完毕,再清空前面添加的所有流控规则以避免干扰测试,然后访问/share/1端点:http://localhost:8401/testA
快速刷新多次,会发现它触发了降级,效果如下所示:
RT型降级策略注意点:
- RT默认最大4900ms,超过此值不起效,比如设置为5000ms则无效
- 通过-Dcsp.sentinel.statistic.max.rt=xxx可以修改,将最大值增大
异常比例 (DEGRADE_GRADE_EXCEPTION_RATIO
):当资源的每秒请求量 >= N(可配置),并且每秒异常总数占通过量的比值超过阈值(DegradeRule
中的 count
)之后,资源进入降级状态,即在接下的时间窗口(DegradeRule
中的 timeWindow
,以 s 为单位)之内,对这个方法的调用都会自动地返回。异常比率的阈值范围是 [0.0, 1.0]
,代表 0% - 100%。
异常数 (DEGRADE_GRADE_EXCEPTION_COUNT
):当资源近 1 分钟的异常数目超过阈值之后会进行熔断
。注意由于统计时间窗口是分钟级别的,若 timeWindow
小于 60s,则结束熔断状态后仍可能再进入熔断状态。