SpringCloudAlibaba(八)——sentinel组件的流控规则
流控规则简介
其原理是监控应用流量的 QPS 或并发线程数等指标,当达到指定的阈值时对流量进行控制,以避免被瞬时的流量高峰冲垮,从而保障应用的高可用性。
QPS:当每秒的请求书超过一定阈值之后对当前请求进行限流
并发线程数:当服务器中创建线程数超过一定阈值之后对当前请求进行限流
流控规则的详解
QPS:当每秒的请求书超过一定阈值之后对当前请求进行限流
并发线程数:当服务器中创建线程数超过一定阈值之后对当前请求进行限流
高级选项
- 1.直接:当配置资源在运行过程超过当前规则配置的阈值之后,对该资源请求做处理是什么
- 2.关联模式:当配置资源在运行过程中超过当前规则配置的阈值之后,对他所关联的资源进行请求做什么处理
- 3.链路模式:当配置资源在运行过程中超过当天规则配置的阈值之后,对他链路中资源请求做什么处理
流控效果 注意:只适用于QPS限流
- 1.快速失败:方式是默认的流量控制方式,当QPS超过任意规则的阈值后,新的请求就会被立即拒绝,拒绝方式为抛出FlowException。这种方式适用于对系统处理能力确切已知的情况下,比如通过压测确定了系统的准确水位时。
- 2.Warm Up(冷启动、预热、缓慢增长):即预热/冷启动方式。当系统长期处于低水位的情况下,当流量突然增加时,直接把系统拉升到高水位可能瞬间把系统压垮。通过"冷启动",让通过的流量缓慢增加,在一定时间内逐渐增加到阈值上限,给冷系统一个预热的时间,避免冷系统被压垮。
- 3.排队等待(始终匀速通过):这种方式,方式会严格控制请求通过的间隔时间,也就是让请求已均匀的速度通过,对应的是漏桶算法
流控规则的使用
一、
二、
三、