redis主从复制流程图
2022-12-24 17:56:40 0 举报
redis主从复制
作者其他创作
大纲/内容
slave
3、send RDB数据
一、全量复制
6、master通过socket长链接持续把写命令发送给从节点,保证数据一致性
4、发送psync(offset)命令
RDB数据
4、清空老数据,并加载主节点RDB
6、执行buffer里的命令到内存
repl buffer
5、send buffer
主从复制流程图
2.1、收到psync命令后,执行bgsave生成最新的RDB快照文件
一、部分复制、断点续传
master会在其内存中创建一个复制数据用的缓存队列,缓存最近一段时间的数据,master和它所有的slave都维护了复制的数据下标offset和master的进程id,因此,当网络连接断开后,slave会请求master继续进行未完成的复制,从所记录的数据下标开始。如果master进程id变化了,或者从节点数据下标offset太旧,已经不在master的缓存队列里了,那么将会进行一次全量数据的复制。
1、跟master建立socket长链接,然后发送psync命令同步数
1、连接断开
3、重新连接到master,建立的是socket长链接
7、masrer通过socket长链接持续把写命令发送给从节点,保证数据一致性
5、如果slave的offset在master中,则master会将缓存从slave的offset之后数据一次性同给slave,否则会全量同步
master
2、master将最新数据
2.2、master开始做RDB之后新数据的缓存,其实就是一些写命令
0 条评论
下一页