怎么判断 Redis 某个节点是否正常工作?

通过互相的 ping-pong 心态检测机制,如果有一半以上的节点去 ping 一个节点的时候没有 pong 回应,集群就会认为这个节点挂掉了,会断开与这个节点的连接。

  • 主节点:默认每隔 10 秒对从节点发送 ping 命令,判断从节点的存活性和连接状态
  • 从节点:每1秒发送 replconf ack{offset} 命令,给主节点上报自身当前的复制偏移量,目的是为实时监测主从节点网络状态以及上报自身复制偏移量, 检查复制数据是否丢失, 如果从节点数据丢失, 再从主节点的复制缓冲区中拉取丢失数据