sentinel--基础--4.2--限流规则--流控模式
·
sentinel–基础–4.2–限流规则–流控模式
代码位置
https://gitee.com/DanShenGuiZu/learnDemo/tree/master/sentinel_learn/demo2
1、介绍
对某个资源进行流量管控

这里是限制 /getId/{id}这个资源的单机QPS设置为1,即每秒只允许1次请求,超出的请求会被拦截并报错
2、流控模式–直接
- 统计当前资源的请求,触发阈值时对当前资源直接限流,
- 是默认的模式
2.1、设置

2.2、测试
并发数为10


3、流控模式–关联
统计与当前资源相关的另一个资源,当另一个资源触发值时,对当前资源限流。
举例:假设当前资源名称为A,另外一个资源名称为B,当B触发值时,对A资源限流。
3.1、满足下面条件可以使用关联模式
两个有竞争关系的资源一个优先级较高,一个优先级较低
3.2、使用场景
比如用户支付时需要修改订单状态,同时用户要查询订单。查询和修改操作会争抢数据库锁,产生竞争,业务需求是有限支付和更新订单的业务,因此当修改订单业务触发阈值时,需要对查询订单业务限流。
3.3、代码

3.4、测试
并发数为10




4、流控模式–链路
统计从指定链路访问到本资源的请求,触发阈值时,对指定链路限流
4.1、设置
有2个链路,分别是
/getId3 --> sayhello
/getId4 --> sayhello
有这样的如下需求
当/getId4资源的qps>2是,对 sayhello资源限流,而另一条从/getId3到sayhello的链路则不会受到任何影响。


4.2、代码



4.3、测试
并发数为10


更多推荐



所有评论(0)