热点参数流控
- 热点流控 资源必须使用注解 @SentinelResource
编写接口 以及 热点参数流控处理器
/**
* 热点流控 必须使用注解 @SentinelResource
* @param id
* @return
*/
@RequestMapping("/getById/{id}")
@SentinelResource(value = "getById", blockHandler = "hotParamHandler")
public Object getById(@PathVariable("id") Integer id) {
return "hi, order " + id;
}
/**
* 热点参数流控处理器
*
* @param id
* @param be
* @return
*/
public Object hotParamHandler(@PathVariable("id") Integer id, BlockException be){
return id + " -> 热点流控了";
}
设置热点规则
设置入口
![](https://img-blog.csdnimg.cn/direct/612084b3f34a44c3b4fd6944d20b81b3.png)
设置热点规则
- 设置第几个参数,从0开始 以及 QPS的流控阈值 普通值阈值为10
![](https://img-blog.csdnimg.cn/direct/26b56202f25241d0b551ce74a96c6437.png)
![](https://img-blog.csdnimg.cn/direct/9efc0e32e3774306ab913c531ba3c305.png)
设置参数
- 编辑热点流控规则 -> 高级选项; 设置参数 id=2 的 流控阈值为2
![](https://img-blog.csdnimg.cn/direct/98195b536d38495f9d2e760e20c60806.png)
访问效果
- 其他参数 10 次 之后才进行流控, id=2 两次之后就流控了
![](https://img-blog.csdnimg.cn/direct/e49e6ca670574c3db2531acfc0be9b7a.png)