作者回复: 既然A的znode编号是1那就说明ZooKeeper首先为A的创建请求分配的zxid。你说的延迟应该是说ZooKeeper给A返回的响应延迟了,这个不影响zxid的大小。A还是leader。
作者回复: 好的,多谢您的建议
作者回复: ZooKeeper使用WatchedEvent(https://zookeeper.apache.org/doc/r3.5.5/api/org/apache/zookeeper/WatchedEvent.html)来表示session的状态变化和znode的变化。WatchedEvent的Watcher.Event.KeeperState对应session的变化,WatchedEvent的Watcher.Event.EventType对应znode的变化。
关于KeeperState和EventType的取值,参见https://zookeeper.apache.org/doc/r3.5.5/api/org/apache/zookeeper/Watcher.Event.html。
如果EventType是None,WatchedEvent代表的就是session的状态变化,否则代表的是znode的变化。
KeeperException表示ZooKeeper的各种出错情况,其中需要特别注意的是KeeperException.ConnectionLossException 。我们可能需要在遇到KeeperException.ConnectionLossException时进行重试。