为什么我的节点数量如此之高并且在Zookeeper中攀升?

时间:2014-11-06 16:15:36

标签: java apache apache-zookeeper

当我运行telnet 127.0.0.1 2181并使用四字母命令stat时。打印出来的所有内容对我来说都是有意义的,除了我的节点数,这是542并且每次运行我的程序时都会攀爬。

这是否意味着我有需要清理的持久节点?

我正在使用O' Reilly Zookeeper书籍,我使用的是#34; AdminClient" class我将打印出所有可能的节点,并且在程序关闭之前使用zk.delete()删除所有内容。

我是zookeeper的新手,所以对任何有关正在发生的事情或最佳实践的想法表示赞赏。

更新 没有人有检查zookeeper实例中的节点的方法吗?必须有一种方法可以在不事先知道路径的情况下查看存在哪些节点。

2 个答案:

答案 0 :(得分:3)

有一个命令行实用程序/opt/zookeeper/current/bin/zkCli.sh,它允许您像文件系统一样导航zookeeper节点层次结构。在安装了ZK的任何盒子上运行它,然后在ZK控制台中使用ls,get,set,rmr等命令。可以通过运行help命令显示支持的命令和tgeir语法的完整列表。有关详细信息,请参阅http://zookeeper.apache.org/doc/trunk/zookeeperStarted.html

答案 1 :(得分:1)

它的znodes cf. https://zookeeper.apache.org/doc/r3.4.6/zookeeperProgrammers.html#sc_zkDataModel_znodes

$ echo srvr | nc localhost 2181

Zookeeper version: 3.3.0-925362, built on 03/19/2010 18:38 GMT
Latency min/avg/max: 0/8/76
Received: 17
Sent: 16
Outstanding: 0
Zxid: 0x300000002
Mode: follower
Node count: 4
  • 版本是3.3.0
  • min / avg / max此服务器的延迟(以毫秒为单位)。这详细说明了服务器响应客户端请求所需的时间。
  • 客户请求数(通常是操作)
  • 收到的客户端数据包发送数量(响应和通知)
  • 未完成的是排队请求的数量,当服务器处于负载状态并且正在接收比它可以处理的更持久的请求时,这会增加,即请求队列
  • zxid是全局(群集范围)事务标识符。其中高32位是时期数(当领导变化时变化)和低32位是xid本身
  • 模式表示服务模式,通常是领导/关注者,但如果没有运行整体则可能是独立的
  • 节点数是ZooKeeper名称空间中的znode数量 数据)

取自https://phunt1.wordpress.com/category/zookeeper/