Redis入门到精通(十八)——主从复制阶段二:数据同步阶段工作流程、数据同步阶段注意事项,主从复制阶段三:命令传播阶段的部分复制

阶段二:数据同步阶段工作流程

在slave初次连接master后,复制master中的所有数据到slave,将slave的数据库状态更新成master当前的数据库状态

一、数据同步阶段工作流程

1.slave发送指令:psync2,请求同步数据
2.master执行bgsave生成RDB同步数据。在创建同步数据的同时,master可能会加入新的数据,所以第一个slave连接时,创建命令缓冲区。生成的RDB文件,通过socket发送给slave
3.slave接收RDB文件,清空之前的所有数据,执行RDB文件恢复过程
4.slave发送命令告知RDB恢复已经完成
5.master发送命令缓冲区的信息(AOF的指令)
6.slave接收信息,执行bgrewriteaof(去重),加速数据恢复过程

二、数据同步阶段注意事项

数据同步阶段master说明

数据同步阶段slave说明

阶段三:命令传播阶段 

时时保持数据同步

三、命令传播阶段的部分复制

1.服务器运行ID

2.复制缓冲区

复制缓冲区内部工作原理

3.复制偏移量

四、心跳机制

五、心跳阶段注意事项

原文地址:https://www.cnblogs.com/wangcuican/p/12913608.html