指令:
设置为从服务器 slaveof ip port
开始同步指令 sync
1 复制过程
-
从服务器发送sync命令以后
-
主服务其执行bgsave命令,生成rdb文件,并且使用缓冲区记录从现在开始的所有的修改类的指令
-
主服务器bfsave结束以后,将rdb文件发送给从服务器,从服务器载入文件
-
主服务器讲缓冲区的所有命令发送给从服务器
-
同步完成,之后主服务器发送指令给从服务器
旧版本的缺陷在与断线以后,又要从重新生成一次rdb文件.认为重连的服务器是一台新的服务器,之前的那台丢了.
而新版本则是,从服务器采用psync命令:
-
复制积压缓冲冲区
-
复制偏移量
字节为单位
-
服务器ID
用于判断是之前的同一个服务器
利用这三部分向tcp一样,重连以后只需要根据复制偏移量重新传送命令即可.