Redis集群之间是如何复制?

2.8 版以前,Redis 通过同步(sync)和指令传播(command propagate)两个操作完成同步

  • 同步(sync):将从节点的数据库状态更新至与主节点的数据库状态一致
  • 指令传播(command propagate):主节点数据被修改,会主动向从节点发送执行的写指令,从节点执行之后,两个节点数据状态又保持一致

2.8 版开始新增 PSYNC 指令,PSYNC 具有两种模式:

  • 完整重同步(full resynchronization),与 SYNC 过程基本一致
  • 部分重同步(partial resynchronization),借助复制偏移量、复制积压缓冲区、服务器运行 ID ,完成主从节点断开连接后,从节点重连主节点后,条件允许,主节点将连接断开期间执行的写指令发送给从节点,从节点接收并执行写指令,将数据库更新至主节点当前状态

【Java面试题与答案】整理推荐

发布了485 篇原创文章 · 获赞 1450 · 访问量 153万+

猜你喜欢

转载自blog.csdn.net/meism5/article/details/104258024