Redis学习_11_主从复制_心跳机制与命令传播

心跳机制

概念:进入命令传播阶段后,master与slave与要进行信息交换,使用心跳机制来进行维护,实现双方保持在线。

    master心跳: 指令:PING 周期:通过repl-ping-slave-period配置,默认时10秒。 作用:判断slave是否在线 查询:可以通过info replication查看,获取slave最后一次的连接间隔,lag是0或者1是正常的,超过1就可能是超时了。 slave心跳: 指令:replconf ack [offset] 周期:1秒 作用1:告诉master自己的复制偏移量,获取最新的数据变更指令 作用2:判断master是否在线

心跳阶段注意事项

    当slave多数掉线或者延迟较高时,master为了保障数据的稳定性,将拒绝所有信息同步操作。 slave数量小于2个时,master停止写操作,停止数据同步:min-slaves-to-write 2 slave延迟都大于8秒时,master停止写操作,停止数据同步:min-slaves-max-lag 8 slave数量由slave发送replconf ack命令做确认 slave延迟由slave发送replconf ack命令做确认

命令传播流程

经验分享 程序员 微信小程序 职场和发展