Sentinel限流规则-热点参数限流


之前的限流是统计访问某个资源的所有请求,判断是否超过QPS阈值。而热点参数限流是分别统计参数值相同的请求(或统计参数值相同的资源),判断是否超过QPS阈值。

代表的含义是:对hot这个资源的0号参数(第一个参数)做统计,每1秒相同参数值的请求数不能超过5

在热点参数限流的高级选项中,可以对部分参数设置例外配置:

结合上一个配置,这里的含义是对0号的long类型参数限流,每1秒相同参数的QPS不能超过5,有两个例外:
如果参数值是100,则每1秒允许的QPS为10
如果参数值是101,则每1秒允许的QPS为15


案例:给/order/{orderId}这个资源添加热点参数限流,规则如下:
1.默认的热点参数规则是每1秒请求量不超过2
2.给102这个参数设置例外:每1秒请求量不超过4
3.给103这个参数设置例外:每1秒请求量不超过10

注意:热点参数限流对默认的SpringMVC资源无效,修改代码如下:

@SentinelResource("hot") @GetMapping("{orderId}") public Order queryOrderByUserId(@PathVariable("orderId") Long orderId) { // 根据id查询订单并返回
    return orderService.queryOrderById(orderId); }

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM