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

SentinelResource的使用

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

其主要参数

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

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

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

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

⽅式⼆

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

  1. 创建⼀个资源⽅法
  1. 书写⼀个全局 blockException 的处理逻辑
  1. 书写⼀个全局处理其他异常的处理逻辑
相关推荐
空中海4 天前
第六篇:可靠性篇 — Sentinel 熔断限流与 Seata 分布式事务
分布式·sentinel
JAVA面经实录9174 天前
如何选择适合项目的「限流 / 熔断 / 降级」方案
java·spring·kafka·sentinel·guava
蓝眸少年CY6 天前
(第十五篇)spring cloud之Sentinel实现熔断与限流
数据库·spring cloud·sentinel
无风听海8 天前
Python 哨兵值模式(Sentinel Value Pattern)深度解析
开发语言·python·sentinel
空中海9 天前
Redis 原理深度解析:持久化 × 主从复制 × Sentinel × Cluster × 性能排查全攻略
数据库·redis·sentinel
接着奏乐接着舞11 天前
Sentinel
sentinel
随风,奔跑11 天前
Spring Boot Alibaba(三)----Sentinel
spring boot·后端·sentinel
武超杰11 天前
Sentinel 安装启动 + 全规则详解 + Feign 整合 + 持久化
sentinel
青槿吖11 天前
Sentinel 进阶实战:Feign 整合 + 全局异常 + Nacos 持久化,生产环境直接用
java·开发语言·spring cloud·微服务·云原生·ribbon·sentinel
StackNoOverflow11 天前
Sentinel服务保护框架完全指南:从原理到实践
java·数据库·sentinel