redis自学(31)全量同步

数据同步原理

主从的第一次同步是全量同步:

 

 

Master如何判断slave是不是第一次来同步数据?这里会用到两个很重要的概念:

  • Replication id:简称replid,是数据集的标记,id一致则说明是同一数据集。每一个master都有唯一的replid,slave则会继承master节点的replid
  • offset:偏移量,随着记录在repl_baklog中的数据增多而逐渐增大。Slave完成同步时也会记录当前同步的offset。如果slaveoffset小于masteroffset,说明slave数据落后于master,需要更新。

因此slave做数据同步,必须向master声明自己的Replication idOffsetmaster才可以判断到底需要同步哪些数据。

是不是第一次,是根据replid是否一致判断的。

 

 

 

 

posted @ 2024-04-09 14:07  蓝海的bug本  阅读(11)  评论(0编辑  收藏  举报