1.Watches通知是一次性的,必须重复注册.
2.同一个ZK客户端,反复对同一个ZK节点(znode)注册相同的watcher,是无效的,最终只会有一个生效。
3.发生CONNECTIONLOSS之后,只要在session_timeout之内再次连接上(即不发生SESSIONEXPIRED),那么这个连接注册的watches依然在。
4.客户端会话失效之后,所有这个会话中创建的Watcher都会被移除。
5.节点数据的版本变化会触发NodeDataChanged,注意,这里特意说明了是版本变化。存在这样的情况,只要成功执行了setData()方法,无论内容是否和之前一致,都会触发NodeDataChanged事件。
6.对某个节点注册了watcher,但是节点被删除了,那么注册在这个节点上的watcher都会被移除。
本文转自 nileader 51CTO博客,原文链接:http://blog.51cto.com/nileader/955515,如需转载请自行联系原作者