springcloud alibaba-sentinel流控-直接-warm up(预热)
实际是很多这样的场景,平时一个系统啥人都没有,但一旦有什么特别的优惠的活动,那并发量就是平时的上百倍。针对这种情况,sentinel在流控效果中提供了一个warn up(预热)的方式,界面如下:
假设流控模式是直接,流控效果是warm up(上图的流控模式不太对),刚开始的 阈值 是 threshold / coldFactory(threshold 是实际阈值(单机阈值),coldFactory是冷加载因子),按上面的图来说,刚开始的阈值QPS是 3.3,当请求QPS超过 3.3,这时候就会启动预热,在预热时长5秒内,慢慢地把阈值提高,直到10
总结就是,刚开始把 阈值调低,不要让过多的请求访问服务器,导致冲垮服务器,先让服务器一点一点处理,再慢慢加量。经典的例子:一个好久没运动的人,你刚开始让他跑10圈,他可能会累死,但是你给他一个预热时间,比如 第一天跑 2圈,第三天跑 3 圈,第四天跑4圈,以此类推...