Redis集群系列八 —— 集群间数据同步原理

  • Post author:
  • Post category:其他


当客户端向从服务器发送 slaveof 命令,要求从服务器复制主服务器时,从服务器首先需要执行同步操作,就是将从服务器的数据库状态更新至主服务器当前所处的数据库状态。

从服务器对主服务器的同步操作需要通过向主服务器发送同步命令来完成。

操作如下:

  1. 从服务器向主服务器发送同步命令;
  2. 主数据库接收到同步命令后,会执行 bgsave 命令,在后台生成一个 rdb 文件,并使用一个缓冲区记录从现在开始执行的所有写命令;
  3. 当主服务器执行完 bgsave 命令后,主服务器会将 bgsave 命令生成的 rdb 文件发送给从服务器;
  4. 从服务器接收并载入这个 rdb 文件, 将自己的数据库状态更新至主服务器执行 bgsave 命令时的数据库状态;
  5. 以上处理完之后,之后主数据库每执行一个写命令,都会将被执行的写命令发送给从数据库。

简单的说就是异步复制。



版权声明:本文为xhaimail原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。