ZooKeeper中的各种角色、Zookeeper节点数据操作流程

(一)ZooKeeper中的各种角色
在这里插入图片描述
(二)Zookeeper节点数据操作流程
在这里插入图片描述
注:    
  1.在Client向Follwer发出一个写的请求
  2.Follwer把请求发送给Leader
  3.Leader接收到以后开始发起投票并通知Follwer进行投票
  4.Follwer把投票结果发送给Leader
  5.Leader将结果汇总后如果需要写入,则开始写入同时把写入操作通知给
  Leader,然后commit;
  6.Follwer把请求结果返回给Client
  
Follower主要有四个功能:
  1. 向Leader发送请求(PING消息、REQUEST消息、ACK消息、REVALIDATE消
  息);
  2 .接收Leader消息并进行处理;
  3 .接收Client的请求,如果为写请求,发送给Leader进行投票;
  4 .返回Client结果。

Follower的消息循环处理如下几种来自Leader的消息:
  1 .PING消息: 心跳消息;
  2 .PROPOSAL消息:Leader发起的提案,要求Follower投票;
  3 .COMMIT消息:服务器端最新一次提案的信息;
  4 .UPTODATE消息:表明同步完成;
  5 .REVALIDATE消息:根据Leader的REVALIDATE结果,关闭待revalidate的
   session还是允许其接受消息;
  6 .SYNC消息:返回SYNC结果到客户端,这个消息最初由客户端发起,用来强制
  得到最新的更新。

猜你喜欢

转载自blog.csdn.net/lv_hulk/article/details/88571798