Redis主从复制及其心跳检测实现机制
1、Redis主从工作模式简述
2、同步
2.1老版本的Redis(2.8之前)
2.2 新版本的Redis(2.8之后)
3、命令传播
4、新版本主从节点同步示例
5、心跳检测
5.1 检测主从服务器的网络连接状态
5.2 辅助实现min-slave选项
5.3 检测命令是否丢失
1、Redis主从工作模式简述
假设Redis中有一个主节点和一个从节点。正常情况下,主节点中进行数据增删改操作,从节点中也会将主节点中的指令执行一遍,实现主从节点的数据同步。而数据同步的关键在于主从节点的两个操作:同步和命令传播
2、同步
Redis的同步操作指的是从节点通过向主节点发送某个同步指令,从而得到主节点最新的数据,使得从节点数据和主节点保持一致。
而不同版本的Redis同步指令不同,同步的方式也不一样。
2.1老版本的Redis(2.8之前)
从节点向主节点发送SYNC指令实现同步。主节点收到从节点的SYNC指令后,执行BGSAVE(全量持久化)生成RDB文件发送给从节点,从节点执行RDB文件将数据同步。这种方式的同步效率非常低。
2.2 新版本的Redis(2.8之后)
从节点向主节点发送PSYNC指令实现同步。PSYNC指令有两种同步模式,完整重同步模式(full resynchronization)和