00:00
那么再往下走的话呢,那么咱们得看一看,说那这个东西它的原理是什么样的呢?是吧,这个原理什么样的是吧?那么这块呢,大家注意啊,我在讲K的原理的时候,其实呢,同时把另外一个东西的原理也给你讲明白了,什么呢?就是买搜狗它的主动复制。啊,MYS狗它本身呢,它现在也有咱们的集群也有主动复制对吧?那么它的个原理什么样的呢?那么咱们就来看一看它的一个对吧,这个kind的工作原理就知道了,对吧?那么如果说can的工作原理首先呢,第一个,那么咱们就得先去了解my circleql主从复制它的一个过程,对吧?那my circle狗L主从呢,它有两个角色,一个叫master,一个呢叫slave。对吧?那么这个master它主要干什么呢?它主要将咱们当前这个主库它的一个变化给记录下来,记录下来之后放在哪呢?放在一个叫叫battery log这样的文件中,对,假如说啊,我现在这里边有102,有103,还有104咱们这三台机器对吧?那么其中我们的102呢,它是我们这master,然后103和104呢,它是我们这个STEM,对吧?那么如果说我在操作的时候,那客户端对吧?那么对于我们这个买进行操作,那你和谁打交道,你是不是应该和咱master来进行打交道呀,对吧?那么他和master打打交道的时候,如果说我现在做了一个什么呢?我做了一个insert或者是update的操作,那么这个时候我在102这个买这个master上面,它会把当前你所做的啊,Insert和Apple操作呢给记录下来,记录到哪呢?记录到我们现在它的一个叫bary log这样的一个这个文件中。
01:41
对吧,记录在这个文件中,然后接下来,那么咱们现在你要想是主从它们三个是不是也整体,那你103和104它的数据是不是得和咱们102来保持一致啊,对吧?那么怎么来保持一致呢?那么咱们这个103104啊,没事,它会向我们102发送请求,对吧?说诶你现在有没有数据变化呀,有没有数据发生变化呀,对吧?那么如果有的话,就是怎么判断,就如果bedroomlo这个文件里边有数据的话,对吧,那意味着我现在呢,发生了这个变化,对吧?那么这个时候呢?啊,那么这里它会有一个进程啊,它会有一个我们新的该进程干什么呢?啊,他会从我们这个102上,你说master上上面把我们这berylo拷贝到103和104这个总上面来。
02:29
啊,拷贝过来,那么拷贝过来之后呢,那么这个时候它有一个概念叫什么呢?原来叫我们这个二进制,对吧,这样的一个操作,现在呢,你可以管它叫什么叫中继日志啊,叫中继日志,那么你现在在我们STEM上把这个日志拿过来,其实这个日志是不是就我be do呀,对吧,只不过换了一个地方,原来在主上,现在呢,到我从那边来了,对吧?那我需要干什么呢?我需要把咱们这个日志里边的东西啊,重新再执行一遍,因为你这日志里记住什么,是不是记住操作呀,注意啊,它并不是记录的是我现在对吧,它的一个变化,它记录什么,记住操作,那我需要把咱们现在这操作呢重新再走一遍,那如果说啊,我现在做的in色的,你的10314的也做in色的,我做update的,你在1314的也做update的,那这样的话是不是就可以保证咱们现在这个数据同步了,那为什么使用这种机制的,大家想一想,其实我们买SQ本身它的一个性能是不是不是特别不是特别好啊,对吧?那么整个我现在这个主从同步的时候,大家想一想,我这个买SQ其实它本身。
03:29
说没怎么参与,他主要干什么了,他主要就是在咱们这个做操作的时候,我是不是就写了个日志啊,我是不是就进入日志,剩下那些什么同步操作,基本上master说没参与,他主要的精力还在干什么,是不是还在处理客户端的请求呢?对吧?哎,我现在做什么请求,我把日志记录一下,对具体怎么同步的,怎么操作的这个事儿对吧?那么由我们这个从对吧他去做,那么咱们现在可以看一看这个图大概的一个过程,首先呢,这个是我master,这个呢是我们s Steve对吧?然后接下来那么咱们如果说我master发生变化了,它会把变化进入到一个叫battery log对吧这样的一个我们的日志文件中,然后接下来我再从这边呢,会向我们这个啊主来发送请求,说有没有变化呀,有没有变化呀,对吧?那么如果有的话,那么他对把当前这个文件拷贝到我的从这边来,那么拷完从之后呢,他其实对会写入到一个叫中继日志文件中,那么接下来它会开启新的我们的线程来去读取啊,来去读取我们中继日志文件中的内容,对吧?其实线程不是进程,是个线程。
04:29
对吧,然后接下来那我现在呢,会把我这个日志文件内容呢,重新执行一遍,说你在这里干什么事,我再从这里边呢,我把你所做的事重新的模仿一遍,跟进一遍,那这样的话是不是可以保证它的数据同步啊,对吧?那么这个其实就是什么?其实就是我们买circleq它的一个主动复制,所以说大家注意啊,如果有人跟你聊的话,My circleq对吧,第一个他给你聊索引,对,肯定给聊索引啊吧,这个索引你肯定得看一看对吧?那第二个呢,那如果说聊咱们这个MYS主存的话,那这个原理那你得知道对吧?所以那咱们现讲的cano啊,对吧,那么这个和MY思什么有什么这个关系呢?注意KO最初的时候,它其实操作谁是不是操作MYS对吧?那我现在呢,在咱们这处理的时候,对吧,这个kno呢,他把自己做了一个伪装啊,他把自己做了伪装,怎么伪装的呢?他告诉master说你就把我当从来对待就行了。
05:23
对吧,因为咱们现在在这处理的时候,Canada相当于在这P层外一对吧,把它当做什么呀,把它当做咱们的STEM对吧?那你想一想,那没事的时候,然们如果mind发生变化了,它是不是要往这里边来记录一个咱们这个日志啊,开到没事里过去,我是从你发生变化了吗?对吧,如果发生变化了,那么他把这变化拿过来,那么把这个变化拿过来之后,大家想一想,是不是相当于我在咱们的can到里边,我知道了你新增的哪些是不是变化了什么呀,对吧?然后接下来,那么你想把这新增变化数据怎么处理,你直接在那can里边处理就行了吧,那么can的默认怎么处理的呢?对吧,还可以发送到咱们指定的端口,对吧,客户端电账va客户端还可以什么,还可以直接去把它发送到我们的卡夫卡。
06:07
就这个东西你可以不写代码,直接配置就可以了,对吧?所以说这块呢,大家要知道这个Kindle它的工作原理就是把自己伪装成了一个我们从对吧,然后接下来从我们的master把这个数据给你拿过来,对吧?但是呢,它并不是说像他从那一样,说你有这个数据,我也要有这个数据,那不是我们一般拿的数据后,因为kno它本身是不是还是做传输操作呀,对吧,我把这数据拿到之后呢,那我可能把它传到什么卡夫卡呀,或者什么地方去了,对吧?哎,那么这块呢,是关于我们的Kindle,它的工作原理是吧。
我来说两句
666
6666
666
感谢分享
666
可以
棒啊
感谢分享
666
厉害了,学习学习。