使用 ZooKeeper 时是否可以监视后代 znode 上的所有事件?
例如,如果我有:
(/)
/ \
(/a) (/b)
/ \
(/c) (/d)
有没有办法观察根目录对/a、/b、/c 和/d 的更改?
最佳答案
没有 ZooKeeper api 可以做到这一点,您必须自己编写。
如果您正在使用 Curator ,您可以使用 PathCache它维护节点上的监视,以及该节点的子节点。当您发现正在观察的根的后代时,您可以编写一些代码来创建更多的 PathCache。
如果您要推出自己的版本,实际上很难做到正确。此 blog描述了一些问题。
关于apache-zookeeper - 是否可以在 ZooKeeper 中监视所有后代节点上的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12098084/