SpringCloud-Sentinel降级规则(Day13)

本文详细介绍了Sentinel中的降级规则,包括基于平均响应时间、异常比例及异常数量的三种降级策略。通过这些策略,Sentinel能够在系统不稳定时进行资源保护,防止故障扩散。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

降级规则

Sentinel熔断降级会在调用链路中某个资源出现不稳定状态时(例如调用超时或异常比例升高),对这个资源的调用进行限制,让请求快速失败,避免影响到其它的资源而导致级联错误。当资源被降级后,在接下来的降级时间窗口之内,对该资源的调用都自动熔断(默认行为是抛出 DegradeException)。Sentinei的断路器是没有类似Hystrix半开状态的。(Sentinei 1.8.0 已有半开状态) 半开的状态系统自动去检测是否请求有异常,没有异常就关闭断路器恢复使用,有异常则继续打开断路器不可用。
在这里插入图片描述

RT(平均响应时间,秒级)

  • 平均响应时间超出阈值且在时间窗口内通过的请求数量>=5,当两个条件同时满足后触发降级
  • 窗口期过后关闭断路器

异常比列(秒级)

  • QPS >= 5且异常比例(秒级统计)超过阈值时,触发降级
  • 时间窗口结束后,关闭降级

异常数(分钟级)

  • 异常数(分钟统计)超过阈值时,触发降级
  • 时间窗口结束后,关闭降级

降级策略测试

RT

平均响应时间(DEGRADE_GRADE_RT):当1s内持续进入5个请求,对应时刻的平均响应时间(秒级)均超过阈值( count,以ms为单位),那么在接下的时间窗口(DegradeRule中的timeWindow,以s为单位)之内,对这个方法的调用都会自动地熔断(抛出DegradeException )。
在这里插入图片描述

降级策略设置

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

异常比例

异常比例(DEGRADE_GRADE_EXCEPTION_RATIO):当资源的每秒请求量 >= 5,并且每秒异常总数占通过量的比值超过阈值( DegradeRule中的 count)之后,资源进入降级状态,即在接下的时间窗口( DegradeRule中的timeWindow,以s为单位)之内,对这个方法的调用都会自动地返回。异常比率的阈值范围是[0.0, 1.0],代表0% -100%。
在这里插入图片描述

降级策略设置

 @GetMapping("/testD")
 public String testD() {
     log.info("testD 异常比例");
     int age = 10/0;
     return "------testD";
 }

在这里插入图片描述
在这里插入图片描述

异常数

异常数( DEGRADE_GRADF_EXCEPTION_COUNT ) 即当资源近1分钟的异常数目超过阈值之后会进行熔断。需注意由于统计时间窗口是分钟级别的,若timeWindow小于60s,则结束熔断状态后码可能再进入熔断状态。
在这里插入图片描述

降级策略设置

在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

临水而愚

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值