定义限流和降级后的处理⽅法(Sentinel)

SentinelResource的使用

在定义了资源点之后,我们可以通过 Dashboard 来设置限流和降级策略来对资源点进⾏保护。同时还能通过 @SentinelResource 来指定出现异常时的处理策略。 @SentinelResource ⽤于定义资源,并提供可选的异常处 理和 fallback 配置项。

其主要参数

这⾥我们着重看当发⽣异常后处理逻辑

⽅式⼀ :直接将限流和降级⽅法定义在⽅法中,也就是说资源⽅法和处理⽅法都在⼀个类中。这种其实就是局部的写法。

  1. 创建⼀个资源定义⽅法
  1. 书写处理blockException的处理逻辑
  1. 书写处理其他异常的处理逻辑(兜底⽅法)

实际开发当中经常出现,服务限流,但是超出规则的默认返回提示,这样不太符合业务逻辑。可以使⽤ blockHandler 来指定⼀个出现异常的兜底⽅法。

⽅式⼆

上边讲解了使⽤了 blockHandler 和 fallback ,其实更多的是异常⽅法的指定,其实我们也可以使⽤ blockHandlerClass 和 fallbackClass 来处理这样的情形(全局兜底)。

  1. 创建⼀个资源⽅法
  1. 书写⼀个全局 blockException 的处理逻辑
  1. 书写⼀个全局处理其他异常的处理逻辑
相关推荐
yoyo_zzm4 天前
SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
spring cloud·gateway·sentinel
短剑重铸之日5 天前
深入理解Sentinel: 01 一次服务雪崩问题排查经历
java·sentinel·降级熔断
列星随旋7 天前
sentinel
sentinel
zz0723207 天前
阿里开源流量防护组件——Sentinel
sentinel
weixin199701080168 天前
《淘宝双11同款:基于 Sentinel 的微服务流量防卫兵实战》
微服务·架构·sentinel
一叶飘零_sweeeet8 天前
高可用架构核心:限流熔断降级全解,Sentinel 与 Resilience4j 原理 + 落地实战
架构·sentinel
Fang fan12 天前
Redis基础数据结构
数据结构·数据库·redis·缓存·bootstrap·sentinel
回到原点的码农13 天前
SpringCloud Gateway 集成 Sentinel 详解 及实现动态监听Nacos规则配置实时更新流控规则
spring cloud·gateway·sentinel
没有bug.的程序员14 天前
黑客僵尸网络的降维打击:Spring Cloud Gateway 自定义限流剿杀 Sentinel 内存黑洞
java·网络·spring·gateway·sentinel