当前位置:   article > 正文

rocketmq 一主多从 的同步机制_一主多从设备信号同步

一主多从设备信号同步

一个master 多个slave下,数据是怎么同步的。

其实是master 维持一个 变量,如果是同步双写的的时候,将这个变量置为对应的offset。然后不停地查看slave上报的进度有没有超过这个进度,一旦超过,就是证明slave

写入成功。返回,否则就是超时。但是最终slave还是会赶上来的。


两个slave会上报两个进度,所以,只有slave进度超过push2SlaveMaxOffset的时候,push2SlaveMaxOffset才会替换。

所以,只要有一个salve达到要求,就会notifywakeup。因为是锁一个信号量,所以就当做成功了。


所以一主多从的本质是,所有salve你们各自拉去数据并上报,如果我需要同步双写等待时,我就不停地验证 

push2SlaveMaxOffset 是否超过需要的offset。
一旦超过,就返回。
前面是用countlantch 锁住一个信号量,所以一个成功就是成功了,这就是一主多从的同步机制,也是一主一从的机制。
 
写的那时候应该都是各自拉取的

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/580478
推荐阅读
相关标签
  

闽ICP备14008679号