在Spring Cloud Alibaba(四)简单接入Sentinel(fallback用法) 中,简单的尝试了一下fallback的用法,下面看一下blockHandler的用法,先看说明:
blockHandler : blockHandler 对应处理 BlockException 的函数名称,可选项。blockHandler 函数访问范围需要是 public,返回类型需要与原方法相匹配,参数类型需要和原方法相匹配并且最后加一个额外的参数,类型为 BlockException。blockHandler 函数默认需要和原方法在同一个类中。若希望使用其他类的函数,则可以指定 blockHandlerClass 为对应的类的 Class 对象,注意对应的函数必需为 static 函数,否则无法解析。
下面直接看代码,在SentinelController新增加一个方法
@GetMapping("/sentinel-test3/{id}")
public String testBlockHandler (@PathVariable ("id") long id ) {
return sService.blockHandlerService (id)

本文介绍了在Spring Cloud Alibaba中如何使用Sentinel的blockHandler来处理BlockException。通过实例展示了当QPS达到限流规则时,如何自定义处理限流降级的方法,并结合blockHandlerClass进行使用。在限流发生时,blockHandler的处理逻辑优先于fallback执行。
639

被折叠的 条评论
为什么被折叠?



