00:00
好,同学们,通过前面的分析和讲解,我们单机版我们自己应付一下,写个小的分布式所勉强还是能凑合,但是如果我们上集群了以后,对于这种那个呃。集群加CP的对比,确保过期时间,也需要有个后台,还要自己再写一个缓存续命线程,那么这个难度就太大,而且我们自己写出来的上生产也不敢保证用。所以说我们。在我们的项目当中,我们一般都是用,那么这个是基于我们分布式锁的一个非常通用的组件,看我们相关理念的官网要求。回到我们的,那么这个时候呢,请同学们打开我们我们的这个document文档,那么大家请看red各种主题是吧,在这都有来。大家看这块是支持事务,这有个distributed lock,这个是是不是实现分布式所通过来管理。
01:01
答案就在这儿,我们来看看啊,Red分布式所官网上我们讲过了,天上飞的理念叫什么?Call red lock,注意不是红锁,更不是康师傅红烧,红烧牛肉锁就叫red分布式锁明白,那么这种理念叫red。天上飞的理念必然有落地的实现,那么这个落地的实现爽死你了,那么兄弟们我们用的什么语言加va用哪个sun OK,那么搁到这了以后,我们才清楚为什么来龙去脉,我们在项目当中要用我们的,那么这个有兴趣的同学可以挨个挨个的看看它的官网,那么它是一个非常强大的功能,在国外的话呢,它也用的比较多,首先在get上,第二个来看看它的。官网啊,它的官网在国外,我打开比较慢,那么在这儿的话呢。我们也可以看得到,这个呢,是一个分布式对象锁和NCH的一个关键组件,你看有lock,有什么red,有什么读写锁,它说白了就是我们分布式锁类似于是吗?分布式red锁,Goc版本的一种加强,那么我们在分布式环境下面,尤其配上集群,我们自己写的恐怕呢不咋敢用,那么所以说按照官网的推荐,我们用ready s,那么接下来。
02:17
上red这个代码,第一个搞个配置啊,那么这样我提前准备好,因为这些都不是重点来。直接拷贝这么一个就完活。然后的话呢,Con这个conflict,注意我们现在呢,这有集群的,有单的,我们这演示就这个告诉人家我们地址全部配好好了,完成这个以后,我们完善我们的代码,从8.2写到9.0,那这个就非常非常的简单了,那么大家请看我们自己写是不是越写越复杂,尤其这个final,我的妈呀,要各种录啊脚本现在呢,直接呢。就可以。删掉了,待会我们写简单的好,这是第一个,第二个我们这个判断也可以删掉了,那么那你删掉以后你用哪个,那么同学们private。
03:10
Private。这波OK吧,那么来,同学们直接out。接下来他呢,就很happy了。过了这,我们的value这个值继续不动不变,那么我们的ready.get look是不是就要把我们的这个产量这个气?给他丢进来呀,然后。直接red洛这一波完成和以前一样,这有点类似于就是我们goc里面的洛克,按洛克,只不过我们那个单机版的,现在呢,把它变成了什么分布式版本,那么一样是它过来。弄了以后直接上我们的洛克OK,那么我们删除的情况,我们怎么用呢?直接finally也是这样一个东东,只不过这是不是要变成我们的按洛克兄弟们这一波OK吧。那么同理,现在。
04:09
按照我们的要求,各位亲,基本上我们的9.1版的程序就算写完成了,他把业务代码完成了。9.19.0版OK吧。那么现在我们看一下一号机我们是这么改,那么二号机器我们呢也这么改,我们继续要压测啊,来同学们。改掉,那么我们的第二个不废话,全部的代码原模原样拷贝过来,那么同学们一般用我们是不是就可以用洛克安洛克玩活啊,那么大家来看看我们现在这个9.0版的啊,从8.2写到了我们的9.0版,看看会有没有什么问题来,我们依旧将我们的两个微服务启动,并且通过N来进行一下压测,好的,那么同学们启动过程我先暂停一下录屏,同学们,那么现在我们两台机器呢,已经。
05:09
成功启动,和刚才一样,又回到了我们的原点,以前我们是什么,就加个SYNCH。单机版的锁,现在我们终于完成了我们的分布式锁,而且用官网推荐的软件上散依旧是按照什么最经典最主流的框架来解决我们的难题,那接下来我们先来判断一下啊。来,我们先讲一下这个数据吧。还是恢复我们的一号商品100个,那么来同学们,现在我们来访问,请看,打到了二号机上面。100个商品,第100号商品卖出去剩99对吧,那么请看。没有任何问题吧,那么现在快快的点看不出什么效果,后台也已经打出来了我们的全部内容,那么接下来我们再来看看这种情况下而言,这个压测还会不会出现超卖这种情况,那么来同学们,我这儿呢,还是老规矩,这个压测可能一次成,也可能一次不成,那么大家请看我现在要压出来一个什么样的一个问题,给大家压压出来,好注意我们是不是已经换成转积成散这种情况了,好,那么同学们还是以前的测试案例。
06:20
我压。马上完成,OK,那么同学们看一下后台,我们。有没有?一三五七九十一十三八十五等等啊,我们如果说是超卖,这个马上就会出现。那么来同学们,八十四八十一,那么你看啊,零二四六八十十二十三十六,貌似是不是根本就没有任何问题啊,八十四八十三八十一这一波OK吧,八十三八十四八十一你看基本上啊。可以用我们的三来解决这些问题了。你压到这儿很难出现它的隐含bug 525456。
07:01
五八。大家请看51535759没问题吧,没出错好。现在呢?
我来说两句