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

龙岩网站建设平台企业营销策略有哪些

龙岩网站建设平台,企业营销策略有哪些,网站开发用px还是rem,网站效果图制作异常处理 默认情况下,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://www.dtcms.com/wzjs/353651.html

相关文章:

  • 沈阳公司网站建设百度关键词搜索排名代发
  • 软件开发平台是什么在线优化工具
  • 福建建设监理网站网络推广营销方式
  • 怎么把自己做的网站放到百度上bt磁力在线种子搜索神器
  • 电力网站建设方案网站百度手机端排名怎么查询
  • wap网站制作动态搜狗seo排名软件
  • 新都网站建设it培训机构推荐
  • 做一般的公司网站需要多少钱沈阳seo关键词
  • wordpress 主体石家庄关键词优化平台
  • 网络推广策划书怎么写廊坊首页霸屏优化
  • 深圳做网页的网站什么软件可以优化关键词
  • 三亚网站推广团队杭州排名优化公司
  • 郑州市建设委员会官方网站平台怎么推广技巧
  • 微信公众号接口文档西安seo教程
  • 网络模块长沙优化排名
  • 三分钟做网站2022年每日新闻摘抄10一30字
  • 山西招标无锡百度seo优化
  • 怎么做黄网站今日国际新闻头条
  • 服装公众号的手机网站怎么做河南企业网站推广
  • wordpress 文章查询网站seo综合查询
  • 萧山做网站公司外贸网站模板
  • 网站开发前端与后端怎么把抖音关键词做上去
  • 网站建设预期达到的效果网络营销推广目标
  • 熵网站电视剧排行榜百度搜索风云榜
  • 河南网站建设价位攀枝花网站seo
  • 一个网站一个月发多少外链比较合适厦门关键词排名推广
  • 做外贸在那些网站找业务史上最强大的搜索神器
  • 房产网签合同嘉峪关seo
  • app手机端电子商务网站功能关键词排名网络推广
  • 做网站猫要做端口映射吗真正免费建站