角色
leader 负责进行投票的发起和决议,更新系统状态
learner 包括follower和observer
follower用于接受客户端请求并向客户端返回结果,在选举过程中参与投票
observer为了扩展系统,提高读取速度可以接受客户端连接,并将请求转发给leader,但observer不参加投票过程,只同步 leader的状态,
client 请求发起方
顺序号
创建znode时设置顺序标识,znode名称后会附加一个值
顺序号是一个单调递增的计数器,由父节点维护
在分布式系统中,顺序号可以被用于为所有的事件进行全局排序,这样客户端可以通过顺序号推断事件的顺序
读写机制
Zookeeper是一个由多个server组成的集群
一个leader,多个follower
每个Server保存一份数据备份
全局数据一致
分布式读写
更新请求转发,由leader实施