当前位置: 首页 > wzjs >正文

用响应式做旧书网站电商网站销售数据分析

用响应式做旧书网站,电商网站销售数据分析,计算机网站模板,网站空间安装异常处理 默认情况下,Sentinel 会抛出 BlockException 异常,如果希望自定义异常,则可以使用 SentinelResource 注解的 blockHandler 属性。 1、自定义异常处理 BlockExceptionHandler 自定义异常处理类实现 BlockExceptionHandler 接口&#…

异常处理

默认情况下,Sentinel 会抛出 BlockException 异常,如果希望自定义异常,则可以使用 @SentinelResource 注解的 blockHandler 属性。

1、自定义异常处理 BlockExceptionHandler

自定义异常处理类实现 BlockExceptionHandler 接口,并重写 handleException 方法,然后将其注册到 Spring 容器中。

基本概念:当 Sentinel 的规则(如流控规则、降级规则等)被触发时,会抛出 BlockException 异常。通过实现 BlockExceptionHandler 接口,可以自定义这些异常的处理逻辑

代码例子 🚀

@Component
public class CustomBlockExceptionHandler implements BlockExceptionHandler {@Overridepublic void handle(HttpServletRequest request, HttpServletResponse response, BlockException e) throws Exception {// 根据不同的规则类型返回不同的提示信息String msg = "请求被限流";int status = 429;if (e instanceof FlowException) {msg = "接口被限流了";status = 429;} else if (e instanceof DegradeException) {msg = "接口被降级了";status = 429;} else if (e instanceof ParamFlowException) {msg = "热点参数限流";status = 429;} else if (e instanceof AuthorityException) {msg = "授权规则不通过";status = 401;} else if (e instanceof SystemBlockException) {msg = "系统规则(负载/...)不满足要求";status = 429;}// 返回JSON格式的错误信息response.setContentType("application/json;charset=utf-8");response.setStatus(status);Map<String, Object> result = new HashMap<>();result.put("code", status);result.put("message", msg);result.put("timestamp", System.currentTimeMillis());response.getWriter().write(new ObjectMapper().writeValueAsString(result));}
}

2、自定义异常处理 blockHandler 

使用 @SentinelResource 注解的 blockHandler 属性,指定自定义的异常处理方法。🎁

基本概念:Sentinel 支持通过 @SentinelResource 注解定义资源并配置 blockHandler 和 fallback 函数来进行限流之后的处理。【兜底处理😎】

注意⚡⚡⚡:blockHandler 函数的参数列表需要和原方法一致,或者可以额外多一个 BlockException 参数用于接收异常。

代码例子 🚀

// 原本的业务方法.
@SentinelResource(blockHandler = "blockHandlerForGetUser")
public User getUserById(String id) {throw new RuntimeException("getUserById command failed");
}// blockHandler 函数,原方法调用被限流/降级/系统保护的时候调用
public User blockHandlerForGetUser(String id, BlockException ex) {return new User("admin");
}

3、特别注意🔕

BlockExceptionHandler 和 blockHandler 的关系:

注意🚓: 如果方法上使用了 @SentinelResource 并指定了 blockHandler,会优先使用该处理方法,而不会走到 BlockExceptionHandler。


文章转载自:

http://SO5uVNtw.qdmdp.cn
http://we6ipnws.qdmdp.cn
http://9QTfpcrC.qdmdp.cn
http://HbEfmTXo.qdmdp.cn
http://LowxTUxU.qdmdp.cn
http://68AZ8cOp.qdmdp.cn
http://G7XY9Bxx.qdmdp.cn
http://h4nJkf5t.qdmdp.cn
http://Aqf0zRg5.qdmdp.cn
http://xz3Fduhl.qdmdp.cn
http://aBsxOBYQ.qdmdp.cn
http://5w1bcONP.qdmdp.cn
http://rextxX3v.qdmdp.cn
http://qF6URFyM.qdmdp.cn
http://47pO3OFi.qdmdp.cn
http://CefNrdtm.qdmdp.cn
http://q7zxfnab.qdmdp.cn
http://8qSsrtCb.qdmdp.cn
http://hvIinrcY.qdmdp.cn
http://4kWDQzg6.qdmdp.cn
http://jGoU0HrR.qdmdp.cn
http://g3XrYvEr.qdmdp.cn
http://38s53Mzx.qdmdp.cn
http://836Ktb1y.qdmdp.cn
http://isuhCewT.qdmdp.cn
http://udQODKMc.qdmdp.cn
http://5mybG4Ie.qdmdp.cn
http://ar3AL5KX.qdmdp.cn
http://QXXT2EQ0.qdmdp.cn
http://AifaQTPA.qdmdp.cn
http://www.dtcms.com/wzjs/776122.html

相关文章:

  • 有了网站的域名下一步怎么做重庆市城市建设档案馆官方网站
  • 支付网站怎么做上海弄网站的
  • 游戏网站做关键字深圳景观设计公司10强
  • 镇江网站建设工作室推广普通话宣传语100字
  • 长春公司做网站找哪个公司好东莞企业网站推广哪里好
  • 青岛济南网站制作o2o商城网站搭建
  • 做网站的工具+论坛黄页推广公司大全
  • qq网页版登录网址全网关键词优化公司哪家好
  • 做兼职那个网站比较好宁波应用多的建站行业
  • 做汉字词卡的网站网址格式怎么写
  • 班级网站建设心得体会范文如何设计网站建设方案
  • 廊坊专业网站建设wordpress 用户排序
  • 江津网站建设怎么样网站建设功能需求分析
  • 建设银行城东支行网站营销网页 制作
  • 佛山做外贸网站信息大连装修公司
  • 企业网站源码asp做国珍新时代 网站
  • 中国国建设监理协会网站什么软件可以搜索关键词精准
  • 番禺网站建设报价制作网站哪家专业
  • 深圳哪里有做网站的宜昌市住房城乡建设网站
  • 平台网站建设的公司滨州市城乡建设部网站首页
  • 广州有哪些做网站的公司餐饮公司注册条件
  • 山东省交通厅建设网站首页wordpress怎么恢复到原来版本
  • 国外网站加速神器付费wordpress
  • 网站三个月没排名怎么形容网站风格
  • 网站建设丽水专做热血电影的网站
  • 网站老提示有风险许昌购物网站开发设计
  • 浙江建设培训考试网站2023推广平台
  • 个人备案网站可以做淘宝客域名 备案号 网站的关系
  • 网站源码上传服务器了怎么做有搜索引擎作弊的网站
  • 宝安网站制作哪里好微擎 网站开发工具