sentinel参数配置详细说明 | 您所在的位置:网站首页 › 苹果6 plus参数详细参数配置 › sentinel参数配置详细说明 |
使用的是sentinel-dashboard来配置
流控规则
阈值类型 QPS 当每秒并发数大于配置,则进行限流并发数线程数 当执行的线程数大于配置,则进行限流单机阈值 配置的具体值流控模式 直接 默认项,就是在资源名配置的路径进行生效 关联:被关联的资源达到阈值后,当前配置的资源会被限流。 如图,当资源test-b达到阈值后,test-a会被限流 链路 入口资源达到阈值后,当前配置的资源会被限流。 如图,sentinel中所有的最开始的入口资源都是sentinel_spring_web_context,如果此资源达到阈值,则test-a会被限流 流控效果 快速失败 默认项,直接进行流控warm up 当系统长期处于低水位的情况下,当流量突然增加时,直接把系统拉升到高水位可能瞬间把系统压垮。通过"冷启动",让通过的流量缓慢增加,在一定时间内逐渐增加到阈值上限,给冷系统一个预热的时间,避免冷系统被压垮。warm up冷启动主要用于启动需要额外开销的场景,例如建立数据库连接,秒杀等等,防止服务瞬间被打垮。其实就是根据冷加载因子,默认3,经过一段时间,才能达到预设的QPS。 如图,意思是初始阈值为10/3 = 3,在6秒内到达QPS到达10。排队等待 当达到阈值,请求进行排队一个一个的通过执行,如果等待时间超过2000ms,则抛出异常 熔断规则熔断策略 慢调用比例 要同时满足两个条件才能够熔断 请求数大于最小请求数慢请求数(执行时间大于最大RT)达到设置的比例,也就是执行时间大于最大RT的次数*比例阈值 如图,在统计时长1000ms内,请求数目大于设置的最小请求数目10,并且慢调用的比例大于阈值,熔断时长5s内自动触发熔断(调用方法时,抛出DegradeException)熔断恢复:在熔断时长后,熔断器进入探测恢复状态(half-open状态), 如果接下来的请求响应时间 < 设置的最大RT响应时间,则结束熔断 如果接下来的请求响应时间 > 设置的最大RT响应时间,则继续在熔断时长内保持熔断异常比例 依旧要同时满足两个条件才能够熔断 请求数大于最小请求数异常比例达到50% 如图,在统计时长1000ms内,请求数目大于设置的最小请求数目10,并且异常的比例大于50%,熔断时长5s内自动触发熔断(调用方法时,抛出DegradeException)异常数 依旧要同时满足两个条件才能够熔断 请求数大于最小请求数异常数大于设置的值 如图,在统计时长1000ms内,请求数目大于设置的最小请求数目10,并且异常数大于10,熔断时长5s内自动触发熔断(调用方法时,抛出DegradeException)注意异常降级仅针对业务异常,对 Sentinel 限流降级本身的异常(BlockException)不生效。为了统计异常比例或异常数,需要通过 Tracer.trace(ex) 记录业务异常 热点规则 如图,test-a接口如果有第一个参数,那么每秒的QPS阈值为10,如果第一个参数值为String类型,值为"student-1",QPS阈值为15 系统规则系统保护规则是从应用级别的入口流量进行控制,从单台机器的总体 Load、RT、入口 QPS、CPU 使用率和线程数五个维度监控应用数据,让系统尽可能跑在最大吞吐量的同时保证系统整体的稳定性。 系统保护规则是应用整体维度的,而不是资源维度的,并且仅对入口流量 (进入应用的流量) 生效。 Load(仅对 Linux/Unix-like 机器生效) 当系统 load1 超过阈值,且系统当前的并发线程数超过 系统容量时才会触发系统保护。系统容量由系统的 maxQps * minRt 计算得出。设定参考值一般 是 CPU cores * 2.5。RT 当单台机器上所有入口流量的平均 RT 达到阈值即触发系统保护,单位是毫秒。 线程数:当单台机器上所有入口流量的并发线程数达到阈值即触发系统保护。入口QPS 当单台机器上所有入口流量的 QPS 达到阈值即触发系统保护。CPU使用率 当单台机器上所有入口流量的 CPU使用率达到阈值即触发系统保护 压测 压测接口/testSentinel为接口,/testSentinelRpc为接口内的feign调用 流控规则 直接模式对/testSentinel进行流控 结果 对/testSentinelRpc进行流控 结果 /testSentinelRpc为feign当被流控后会直接执行@FeignClient中的fallback处理类的方法 关联模式结果 设置为/testSentinelV2关联/testSentinel,当/testSentinel达到设置的阈值后,/testSentinelV2会被流控 链路模式结果 链路模式和直接模式结合链路流控阈值为20,接口流控阈值为10 结果是当阈值超过10会进行流控 链路流控阈值为10,接口流控阈值为20 结果依旧是阈值超过10会进行流控 流控效果 warm up结果 可以看出warm up模式整个过程是生效的 排队等待结果 熔断规则首先每秒15请求数,隔一段时间后为每秒5请求数进行压测 可以看到熔断是生效的 |
CopyRight 2018-2019 实验室设备网 版权所有 |