Zookeeper内部原理
节点类型
stat结构体
-
czxid-创建节点的事务zxid:每次修改ZooKeeper状态都会收到一个zxid形式的时间戳,也就是ZooKeeper事务ID。
事务ID是ZooKeeper中所有修改总的次序。每个修改都有唯一的zxid,如果zxid1小于zxid2,那么zxid1在zxid2之前发生。
-
ctime - znode被创建的毫秒数(从1970年开始)
-
mzxid - znode最后更新的事务zxid
-
mtime - znode最后修改的毫秒数(从1970年开始)
-
pZxid-znode最后更新的子节点zxid
-
cversion - znode子节点变化号,znode子节点修改次数
-
dataversion - znode数据变化号
-
aclVersion - znode访问控制列表的变化号
-
ephemeralOwner- 如果是临时节点,这个是znode拥有者的session id。如果不是临时节点则是0。
-
dataLength-znode的数据长度
-
numChildren-znode子节点数量
监听器原理
两个小问题
1. ZooKeeper的部署方式有哪几种?集群中的角色有哪些?集群最少需要几台机器?
(1)部署方式单机模式、集群模式
(2)角色:Leader和Follower
(3)集群最少需要机器数:3
2. ZooKeeper的常用命令
ls
create
get
delete
set…