1、消息类型划分
节点间发送的消息主要分为 5 种:meet 消息、ping 消息、pong 消息、fail 消息、publish 消息。不同的消息类型,通信协议、发送的频率和时机、接收节点的选择等是不同的:
2、特点介绍
- MEET 消息: 在节点握手阶段,当节点收到客户端的
CLUSTER MEET命令时,会向新加入的节点发送MEET消息,请求新节点加入到当前集群;新节点收到 MEET 消息后会回复一个PONG消息。 - PING 消息: 集群里每个节点每秒钟会选择部分节点发送
PING消息,接收者收到消息后会回复一个PONG消息。PING 消息的内容是自身节点和部分其他节点的状态信息,作用是彼此交换信息,以及检测节点是否在线。PING消息使用 Gossip 协议发送,接收节点的选择兼顾了收敛速度和带宽成本,具体规则如下:(1)随机找 5 个节点,在其中选择最久没有通信的 1 个节点;(2)扫描节点列表,选择最近一次收到PONG消息时间大于cluster_node_timeout / 2的所有节点,防止这些节点长时间未更新。 - PONG消息:
PONG消息封装了自身状态数据。可以分为两种:第一种

本文介绍了Redis集群中节点间通信的五种消息类型:MEET、PING、PONG、FAIL和PUBLISH,详细解析了它们的特点和作用。通过Gossip协议,节点以高效且节省带宽的方式保持集群状态同步。
最低0.47元/天 解锁文章
1790

被折叠的 条评论
为什么被折叠?



