Sentinel学习笔记02-@SentinelResource
@SentinelResource注解是配合每种规则来使用的,他的value属性对应的就是每个规则的资源名。
案例接口:
如果从簇点链路和流控规则都进行了配置:
那么只要触发了其中的一个就会被限流。不同的就是如果触发的是簇点链路的限流,那么会直接返回一个默认的值:Blocked by Sentinel (flow limiting)
如果触发的是@SentinelResource的限流,会抛异常:
com.alibaba.csp.sentinel.slots.block.flow.FlowException: null
常用参数一:blockHandler = "flowException"
作用就是指定在当前类里面的某一个方法来实现自定义的限流返回。
这种方式会导致耦合,所以可以借助下一个参数:
常用参数二:blockHandlerClass
作用就是将自定义的限流返回方法拆分出来,blockHandler是其对应的方法名称。MyBlockHandlerClass中对应的方法必须是static,否则无法解析,不生效。