zookeeper简介

Zookeeper Architecture

architecture

  • 在zookeeper集群中,只有一个leader节点,其它的都是followers
  • leader在启动的时候选举产生
  • 当zk数据发生变更,leader节点负责将数据写入磁盘然后写入内存中
  • zk集群最小节点数为2x+1,x代表允许宕机的节点数

Read Function Of Zookeeper

img

  • according to the consistency of zookeeper ,依据zookeeper集群数据一致性原则,客户端可以在zk任何节点上读取数据

Write Function Of Zookeeper

img

  • 写操作可以在任何节点上完成
  • 当zk节点收到写请求的时候,会将请求转发给leader节点,leader节点收到写请求后,会向所有follower节点发送一个request请求,询问follower节点是否可以做写操作。
  • follower节点跟进自身情况,返回ACK消息给leader确实是否可以完成写操作,当leader收到的ACK消息节点数大于50%。leader开始执行写操作,并将数据同步到follower节点 原文参考