00:00
好,同学们,我们继续,那么按照刚才杨哥布置的作业,那么我给也给大家说了,我讲的直接和关联,刚才呢,我们也已经说了,按照我给大家的资料和文档。链路多个请求调用了同一个微服务家庭作业,请大家按照我刚才发给你们的资料进行一下自我配置听懂,因为太多了。123456,我讲五个,我留给你做一个好吗?男的我们讲容易的,你给我去自己去按照我给你的操作手册和文档做一下,好,那么这个就是我们相应的前面讲的流控规则,那接下来同学们什么情况,是不是要讲讲流控效果了,目前到。此为止,我们是不是只看到过一个快速失败弹出来一个那个那个block的by sentinel被sentinel限流了,那么其他的我想了解一下什么叫。
01:05
Warm up,什么叫排队等待呢?那么这个时候请同学们跟着杨哥继续学一下。来流控效果,我们先来看第一个叫直接快速失败,这个好说,是不是我们默认的流控处理,那么就是一言不合,就是报这个block by sentinel flow limiting,那么它呢,源码呢是来自于这个default controltr了,OK,那我们呢,简简单单的看一眼,有兴趣的同学,那么按照杨哥给的资料,可以去打打源码去看看,那么这个呢,我们刚才呢,也稍微的解读了过一下,我在给大家的资料上面呢有详细,那么这个我就节约时间,不再废话,关键是后面这些没讲过的,这些重难点的,当场我们在课堂上就讲重要的啊,因为东西太多了,好,那么下面兄弟们我们就来看看我们的。
02:00
预热好,各位亲,我就是酶解思考一下什么叫预热好,那是不是就慢慢涨上来,那么它这个意思是什么概念呢?一个系统最怕就是平时访问量是零。然后突然一秒钟,那一瞬间,那访问量是10万,那么这个时候是不是极端情况?那么假设你让我承载十十万的并发量,我也认了。那么请问是允许我慢慢的一点点热热乎乎的预预热上来啊,那么所以说我们这儿的意思是这样的,预热首先它有一个公式啊。阈值除以它的冷漠载因子,默认值是三,经过多少时常以后才会达到我们的阈值?我靠,读完以后回答,我是根本读不懂。杨哥,你是不是写错了?你们别着急,我们先看一下官网。地址呢,就是这个我就不再切换了,反正也是抓官网上抓图抓过来的,它呢叫warm up,即预热冷启动的方式,当系统长期处于低水位的情况下,比如说这儿就是平时无人问津,猛的你一下子给我打到最高,那么是不是把我干死了,所以说直接把系统拉升到高水位,可能瞬间就把系统给打塌了,那么我们慢慢的预热一下,给它慢慢的加上来,有一个幅度震荡的波动,那什么叫。
03:28
这个冷负载冷冷链,那个cold发冷因子呢,就是这个元素啊,大家请看冷加载因子,那么默认值是三好,那么这块听我解释。首先它的这个。Code的factor冷加载因值是三,即请求QPS啊,从我们的预值啊,要除以三开始啊,经过预热多长时间深至我们最后设定的QPS阈值啊,那么说人话兄弟们,假设我现在是选择这个wma,那么然后我这就写个五,我这就写个十,这个意思就是说test I。
04:13
一开始啊,我希我希望最终的效果是你每秒钟能承受十的QPS啊,但是呢,我给你慢慢预热起来,一开始啊。冷加载因子默认值是三,那么一运行以后,十除以三就是三,所以说一开始啊,你的这个单机阈值就是三,但是给你一个缓冲预热时间,五秒钟以后,让你从三慢慢的过渡到十,这么说听懂了吗?好,那么同学们我们来看看,那么我们的这个限流能启动,那么这个是我们的。官网啊,就跟我刚才拷贝出来的那个呢,是一样的啊同学们呢,限流能启动,那么这个公式啊,还有你看。它的冷加载因子是等于三,请求QS从这个开始啊,所以说均来自于官网,但关键你要把它做对,那么下面我们呢,不但要有官网,还要有源码的证明。
05:11
官网说阈值啊,除以三开始,那么弟兄们。这个类啊,自己去找啊,我都给你了,我把它抓出来,有没有发现那么这个warm up ctrl了,然后构造方法的时候写死了,它自己扣造发冷加的因子是几是三好,那么所以说我们的up配置意思就是这样,比方说这次我玩一下test b10 warm up5,意思是这样的,默认的冷加载因子是三。即请求的QPS啊,我现在除的写的是不是12 12除以三开始啊,十除以三等于三经过预热时长。才逐渐升至设定的最终QPS,那么经过预热的时长多少?我给你五秒钟的缓冲期,五秒钟以后我将从三真真正正的变为十,明白了吗?系统初始化十除以三约等于三阈值开始就是三,就是前五秒钟是三,后五秒钟才慢慢的升高到十,OK,那么来同学们,我们呢,来做一下这个配置,那么此此时我们选择的呢,是用一下我们的。
06:24
Test b给大家试试啊,那么这个时候的话呢,来吧,Test b,那么也应该有了,那么这留号,那么这我们呢是12,但是我高级选项就是关联,那么关哦不抱歉,不是说错了,那么这个时候我们还是直接失败,我们那就是直接快速失败,变成直接warm up,那么这个时候多少秒五,那么兄弟们心在那么大家请看我们的流控规则,这就有B就有warm up预热好,那么同学们。这个预热以后一开始啊,我们去打的时候请看啊,刚开始的时候不行,后续慢慢OK,为什么?因为一开始啊,一秒一下好说,一秒一下好说,但是我一开始十除以三是不是等于三,那么大家请看。
07:11
报错了吧,但是慢慢的经过了五秒钟以后,大家请看,慢慢的我再怎么点它是不是就扛得住了,经过五秒钟以后,我还是用同样的点数,那么大家请看,这个时候它就不会再报错了,这么说能跟上,当然除非说是是吗?你五秒钟以后,你的这个单击阈值啊,也超过十了,那么这个时候,那么又会是报错,是另外一种,但是这个意思啊,大家要明白,这个预热就是给允许你有一个缓冲的场景,那么它的应用场景呢,就是秒杀系统在开启的瞬间,早上十点。开枪,那那个时候。高并发的流量上来就可能把系统打死,所以说预热方式啊,小米啊,包括京东这些都有这样的预热能加载,所以说慢慢的把流量放进来多少多少秒以后,我们这个系统也在慢慢的复苏了,那么基本上最终我们的配置就是开始冷加在因子十除以三,就这句话好,那么就不再重复啰嗦,同学们可以去试一下,这个就是我们的流控的预热效果。
我来说两句