在3台机器上有3个动物园管理员,每个动物园管理员有一个卡夫卡经纪人。要跟踪3 数znodes的: 数量的主机的1 [1 *主机数目= 3] 是否有跟踪主机名& Z序节点与Zookeeper.Stat类变量时Z序节点将其状态改变的任何方式[caseOk/NoNode]。 试图实现一个计数器来跟踪多个主机端口上的活动znode。 在标识第一个znode的点处出现实例并重新连接实例。Zookeeper znode手表计数器
0
A
回答
0
你的问题有一点含糊不清。我假设你有3个独立的Zookeeper节点(独立的或3个独立的合唱团)并且想要在所有3个Zookeeper节点的/some/path
上观看同一个ZNode。
(如果你指的是具有3个节点的单一集合,那么你不必担心节点作为乐团将在保证整体中的节点一致性)
最简单的方法是使用Apache Curator配方(请参见recipes),NodeCache。 Apache Curator是一套配方和对标准ZookeeperClient的扩展。它在内部管理所有边缘情况和连接状态,以便您不必担心纯粹的Zookeeper客户端的困难。 NodeCache可以观察给定的ZNode(在给定的ZPath上)并通知发生在该ZNode上的变化。
请参阅this answer了解如何初始化CuratorFramework实例。
您只需按照上述答案中的描述初始化3个带有3个连接字符串(针对您的3个节点)的CuratorFramework实例,然后为每个客户端启动NodeCache对象。
CuratorFramework client1=//create CuratorFramework intance with corresponding connection string.
CuratorFramework client2=//create CuratorFramework intance with corresponding connection string.
CuratorFramework client3=//create CuratorFramework intance with corresponding connection string.
然后启动所有这些客户,
client1.start();
client2.start();
client3.start();
最后,创建并启动了Z序节点NodeCache情况下,每个CuratorFramework实例。
NodeCache znode1=new NodeCache(client1, "/znode/path");
NodeCache znode2=new NodeCache(client2, "/znode/path");
NodeCache znode3=new NodeCache(client3, "/znode/path");
然后加入NodeCacheListener每个节点的缓存认购Z序节点改变。
znode1.getListenable().addListener({listener class implementing NodeCacheListener});
znode2.getListenable().addListener({listener class implementing NodeCacheListener});
znode3.getListenable().addListener({listener class implementing NodeCacheListener});
然后,启动它们。
znode1.start();
znode2.start();
znode3.start();
现在,您将收到任何通过您注册的听众发生的变化。希望你明白了。
相关问题
- 1. Zookeeper Znode
- 2. Zookeeper CLI - 用空格读取Znode
- 3. 错误:无法从zookeeper获取主地址; znode数据== null值
- 4. ZooKeeper节点计数器?
- 5. ZooKeeper可以在一次操作中获得znode数据和znode数据版本(stat)吗?
- 6. 如何获得ZooKeeper的手表数量
- 7. zookeeper的znode的客户端身份验证和ACL权限?
- 8. 为什么ZooKeeper改变我的znode的名字?
- 9. 如何获得znode ip
- 10. 带毫秒数计数器的手表
- 11. 什么是ZooKeeper以及zookeeper的工作原理?
- 12. 在ZooKeeper中,我可以在不存在的znode上使用async getData()吗?
- 13. 默认的zookeeper观察者做什么?
- 14. Zookeeper集群监视器
- 15. mapr:手动安装mapr-zookeeper-5.0.0
- 16. Zookeeper为什么使手表一次触发?
- 17. 如何在kazoo中使用zookeeper手表来阻止程序
- 18. zookeeper Python客户端手表真的很慢
- 19. 计数手指
- 20. 手动增加CSS计数器
- 21. apache zookeeper问服务器RAM
- 22. 如何在Zookeeper上启用SASL认证层?
- 23. 计数器图表
- 24. ZooKeeper - SOLR问题
- 25. Linq本地计数器关闭不同的结果VS手表
- 26. HBase ZooKeeper
- 27. Apache Zookeeper /馆长锁的生存时间
- 28. Zookeeper分布式系统设计
- 29. 齿轮手表设计师步数计数语言变化
- 30. Zookeeper是否适用于对象缓存?