方式一:将兜底方法和控制器请求写在一起 @GetMapping(/fun3)@SentinelResource(value = fun3,blockHandler = fun3Handler)public String fun3() { return fun3;}//兜底方法public String fun3Handler(BlockException ex){ //Sentinel提
方式一:将兜底方法和控制器请求写在一起
@GetMapping("/fun3") @SentinelResource(value = "fun3",blockHandler = "fun3Handler") public String fun3() { return "fun3"; } //兜底方法 public String fun3Handler(BlockException ex){ //Sentinel提示信息 String canonicalName = ex.getClass().getCanonicalName(); return "兜底:fun3Handler "+canonicalName+" 服务不可用!"; }在Sentinel中配置限流规则:
注意:使用资源流限流,不要使用url限流。因为URL限流只会调用默认的方法,只有资源名限流,自定义兜底方法才能起作用。
高频访问fun3结果:
方法二:将兜底方法写到单独的类中
- 兜底方法
- 控制器请求方法
建议限流无则+测试,同方法一