MST

星途 面试题库

面试题:缓存设计之Redis集群搭建基础

请阐述在搭建Redis集群时,节点之间是如何进行通信的?简单说明通信机制的原理。
18.7万 热度难度
后端开发缓存设计

知识考点

AI 面试

面试题答案

一键面试

节点通信方式

Redis 集群节点之间采用** gossip 协议**进行通信。

通信机制原理

  1. 信息交换:节点定期(通常100毫秒左右)向集群内部分其他节点发送ping消息,消息内容包含自身状态及部分其他节点状态。接收到ping消息的节点回复pong消息。这样节点能不断更新自己对整个集群状态的认知。
  2. 故障发现:如果一个节点在一定时间内多次没有收到某个节点的pong回复,会将其标记为疑似下线(PFAIL)。当半数以上持有槽的主节点都标记某个节点为PFAIL时,这个节点会被标记为已下线(FAIL),此时集群会进行故障转移。
  3. 数据更新:通过gossip协议,节点之间交换的状态信息包含节点负责的哈希槽分配等数据。新节点加入集群、节点故障转移等操作时,集群状态的变更信息会通过gossip协议在节点间传播,使各节点最终达成一致的集群状态认知。