redis高级之集群---主从复制(三)---心跳机制

心跳机制

  1. 进入命令传播阶段后,master与slave间需要进行信息交换,使用心跳机制进行维护,实现双方连接保持在线
  2. master心跳
    1. 指令:PNG
    2. 周期:由repl-ping-slave-period决定,默认10秒
    3. 作用:判断slave是否在线
    4. 查询:INFO replication  获取slave最后一次连接时间间隔,lag项维持在0或1视为正常
  3. slave心跳任务
    1. 指令:REPLCONF ACK(offset)
    2. 周期:1秒
    3. 作用1:汇报slave自己的复制偏移量,获取最新的数据变更指令
    4. 作用2:判断master是否在线

心跳阶段注意事项

当slave多数掉线,或延迟过高时,master为保障数据稳定性,将拒绝所有信息同步操作

min-slaves-to-write 2

min-slaves-max-lag 8

slave数量少于2个,或者所有slave的延迟都大于等于10秒时,强制关闭master写功能,停止数据同步

  1. slave数量由slave发送REPLCONF ACK命令做确认
  2. slave延迟由slave发送REPLCONF ACK命令做确认

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章