cluster meet

CLUSTER MEET命令实现:

  1. 节点 A 会为节点 B 创建一个 clusterNode 结构, 并将该结构添加到自己的 clusterState.nodes 字典里面。
  2. 节点A根据CLUSTER MEET命令给定的IP地址和端口号,向节点B发送一条MEET消息。
  3. 节点B接收到节点A发送的MEET消息,节点B会为节点A创建一个clusterNode结构,并将该结构添加到自己的clusterState.nodes字典里面。
  4. 节点B向节点A返回一条PONG消息。
  5. 节点A将受到节点B返回的PONG消息,通过这条PONG消息节点A可以知道节点B已经成功的接收了自己发送的MEET消息。
  6. 之后,节点A将向节点B返回一条PING消息。
  7. 节点B将接收到的节点A返回的PING消息,通过这条PING消息节点B可以知道节点A已经成功的接收到了自己返回的PONG消息,握手完成。
  8. 之后,节点A会将节点B的信息通过Gossip协议传播给集群中的其他节点,让其他节点也与节点B进行握手,最终,经过一段时间后,节点B会被集群中的所有节点

猜你喜欢

转载自blog.csdn.net/tuxedolinux/article/details/80572164