基本介绍

Sentinel流控规则
Sentinel流控规则
Sentinel流控规则

流控模式

直接(默认)

Sentinel流控规则

测试
1、快速点击访问http://localhost:8401/testA
2、Blocked by Sentinel (flow limiting)

关联

是什么:
当关联的资源达到阈值时,就限流自己,例如当与A关联的资源B达到阈值后,就限流自己(即B惹事,A挂了)。

Sentinel流控规则

测试
1、postman模拟并发密集访问testB
Sentinel流控规则
2、点击访问http://localhost:8401/testA
3、运行后发现testA挂了

流控效果

直接->快速失败(默认的流控处理)

直接失败,抛出异常Blocked by Sentinel (flow limiting)

预热

公式:阈值除以coldFactor(默认值为3),经过预热时长后才会达到阈值

默认coldFactor为3,即请求QPS阈值从threshold/3开始,经预热时长逐渐升至设定的QPS阈值。

可以从com.alibaba.csp.sentinel.slots.block.flow.controller.WarmUpController发现其冷因子默认值是3
Sentinel流控规则


配置
Sentinel流控规则

测试
1、多次点击http://localhost:8401/testB
2、刚开始不行,后续慢慢OK

应用场景:如:秒杀系统在开启的瞬间,会有很多流量上来,很有可能把系统打死,预热方式就是把为了保护系统,可慢慢的把流量放进来,
慢慢的把阀值增长到设置的阀值

排队等待

匀速排队,阈值必须设置为QPS
Sentinel流控规则
Sentinel流控规则


配置:
Sentinel流控规则

测试
1、用postman模拟,每0.2s给testb发10个请求
2、可以看到10个请求并不是同时处理的,而是每1s处理一个

相关文章: