Redis 5.0 主从复制协议握手流程

2019-03-13 15:28:50 浏览数 (1)

最近研究了一下 Redis 5.0 主从复制部分的代码,其同步协议的握手流程比较繁琐,兼容了不同版本协议的差异,支持了增量同步数据。

当从启动后,会直接连接主节点,首先使用 PSYNC 命令尝试增量同步,如果主返回不支持、或者元数据与主衔接不上,则跳转全量同步。

顺便在写一些细节:

  • 当KEY有TTL时,从节点不执行KEY过期的逻辑,当主上对应的KEY过期后,主节点会同步给从节点一条对应的 DEL 命令,用以删除从节点上对应的KEY。

整个握手流程与状态迁移:

参考

  • 官方文档介绍

0 人点赞