ZooKeeper客户端

命令基本语法 功能描述
help 显示所有操作命令
ls path [watch] 显示所有操作命令
ls path [watch] 查看当前节点数据并能看到更新次数等数据
create 普通创建, -s 含有序列,
-e 临时(重启或者超时消失)
get path [watch] 获得节点的值
set 设置节点的具体值
stat 查看节点状态
delete 删除节点
rmr 递归删除节点

Zookeeper客户端

  1. ZooKeeper原生客户端
    Zookeeper客户端是异步的,需要引入CountDownLatch 来确保连接好了再做下面操作。Zookeeper原生api是不支持迭代式的创建跟删除路径的,具有如下弊端:
  • 会话的连接是异步的;必须用到回调函数 。
  • Watch需要重复注册:看一次watch注册一次 。
  • Session重连机制:有时session断开还需要重连接。
  • 开发复杂性较高:开发相对来说比较琐碎。
  1. ZkClient
    开源的zk客户端,在原生API基础上封装,是一个更易于使用的zookeeper客户端,做了如下优化。
    一 、在session loss和session expire时自动创建新的ZooKeeper实例进行重连。
    二、 将一次性watcher包装为持久watcher。

  2. Curator
    开源的zk客户端,在原生API基础上封装,apache顶级项目。是Netflix公司开源的一套Zookeeper客户端框架。了解过Zookeeper原生API都会清楚其复杂度。Curator帮助我们在其基础上进行封装、实现一些开发细节,包括接连重连、反复注册Watcher和NodeExistsException等。目前已经作为Apache的顶级项目出现,是最流行的Zookeeper客户端之一。

  3. ZooInspector:Zookeeper图形化客户端工具

posted @ 2021-04-18 20:56  Abserver  阅读(127)  评论(0)    收藏  举报