Zookeeper 节点特性

zookeeper 的节点特性和简单使用场景,正是由于这些节点特性的存在使 zookeeper 开发出不同的场景应用。

1、同一级节点 key 名称是唯一的

$ ls /
$ create /runooo 2

已存在 /runooo节点,再次创建会提示已经存在。

2、创建节点时,必须要带上全路径

$ ls /runooo
$ create /runooo/child 0
$ create /runooo/child/ch01 0

3、session 关闭,临时节点清除

$ ls /runooo
$ create -e /runooo/echild 0

 

 同时终端二查看该节点:

$ ls /runooo

 

 ctrl+c 关闭终端一连接后,查询终端二 /runooo/echild 节点消失。

$ ls /runooo

4、自动创建顺序节点

$ create -s -e /runooo 0

5、watch 机制,监听节点变化

事件监听机制类似于观察者模式,watch 流程是客户端向服务端某个节点路径上注册一个 watcher,同时客户端也会存储特定的 watcher,当节点数据或子节点发生变化时,服务端通知客户端,客户端进行回调处理。特别注意:监听事件被单次触发后,事件就失效了。

提示:参考常用命令章节 get 命令监听 watch 使用,后面章节将详细介绍 watch 实现原理。

6、delete 命令只能一层一层删除

$ ls /
$ delete /runooo

 

 

提示:新版本可以通过 deleteall 命令递归删除。

有了上述众多节点特性,使得 zookeeper 能开发不出不同的经典应用场景,比如:

  • 1. 数据发布/订阅
  • 2. 负载均衡
  • 3. 分布式协调/通知
  • 4. 集群管理
  • 5. 集群管理
  • 6. master 管理
  • 7. 分布式锁
  • 8. 分布式队列
posted @   Mr.peter  阅读(120)  评论(0编辑  收藏  举报
编辑推荐:
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
点击右上角即可分享
微信分享提示