Redis Cluster 将所有数据映射到 16384 个哈希槽。每个 key 通过 CRC16(key) % 16384 计算所属槽位,再路由到负责该槽位范围的主节点。
节点间通过 Gossip 协议交换状态信息。每个节点每秒随机选取若干节点发送 PING,收到后回复 PONG。消息中携带部分已知节点的状态信息(epoch、slot 分配、故障标记等),实现最终一致的集群视图。
当超过半数主节点标记某节点为 PFAIL(疑似故障),该节点被标记为 FAIL。其从节点发起选举(Raft-like),获得多数主节点投票后晋升为新主节点,接管原主节点的哈希槽。