ZooKeeper第三方客户端CuratorFramework简介

本文涉及的产品
任务调度 XXL-JOB 版免费试用,400 元额度,开发版规格
服务治理 MSE Sentinel/OpenSergo,Agent数量 不受限
云原生网关 MSE Higress,422元/月
简介: CuratorFramework监听机制的一些细节

结论:在使用CuratorFramework的监听机制时,

    如果使用NodeCache,对于多级路径,即使不创建该路径,设置监听后CuratorFramework会主动创建从第一级路径到倒数第二级的路径,比如要监听路径 "/a/b/c" 的NodeCache,CuratorFramework会自动替你创建路径 "/a/b";

    如果使用PathChildrenCache,对于多级路径,即使不创建该路径,设置监听后CuratorFramework会主动创建整个完整路径,比如要监听路径 "/A/B/C" 的PathChildrenCache,CuratorFramework会自动替你创建路径 "/A/B/C"。

测试代码:


 


启动程序前,ZooKeeper的节点情况:

[zk: localhost:2181(CONNECTED) 2] ls /

[cluster, brokers, zookeeper, admin, isr_change_notification, log_dir_event_notification, controller_epoch, name, ha, consumers, latest_producer_id_block, config]

节点中并不包含"/A"和"/a"这两个。


启动程序后,ZooKeeper的节点情况:

[zk: localhost:2181(CONNECTED) 3] ls /

[cluster, a, A, brokers, zookeeper, admin, isr_change_notification, log_dir_event_notification, controller_epoch, name, ha, consumers, latest_producer_id_block, config]

再查看其具体路径:

[zk: localhost:2181(CONNECTED) 4] get /a/b


cZxid = 0x125b

ctime = Sun Sep 09 12:43:02 GMT+08:00 2018

mZxid = 0x125b

mtime = Sun Sep 09 12:43:02 GMT+08:00 2018

pZxid = 0x125b

cversion = 0

dataVersion = 0

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 0

numChildren = 0

[zk: localhost:2181(CONNECTED) 5] get /a/b/c

Node does not exist: /a/b/c

[zk: localhost:2181(CONNECTED) 6] get /A/B/C


cZxid = 0x125e

ctime = Sun Sep 09 12:43:02 GMT+08:00 2018

mZxid = 0x125e

mtime = Sun Sep 09 12:43:02 GMT+08:00 2018

pZxid = 0x125e

cversion = 0

dataVersion = 0

aclVersion = 0

ephemeralOwner = 0x0

dataLength = 0

numChildren = 0


可以看出,确实和结论一样。

相关实践学习
基于MSE实现微服务的全链路灰度
通过本场景的实验操作,您将了解并实现在线业务的微服务全链路灰度能力。
相关文章
|
6月前
|
存储 API Apache
【zookeeper 第三篇章】客户端 API
本文介绍了Apache ZooKeeper客户端的一些常用命令及其用法。首先,`create`命令用于创建不同类型的节点并为其赋值,如持久化节点、有序节点及临时节点等。通过示例展示了如何创建这些节点,并演示了创建过程中的输出结果。其次,`ls`命令用于列出指定路径下的所有子节点。接着,`set`命令用于更新节点中的数据,可以指定版本号实现乐观锁机制。
45 0
|
4月前
|
分布式计算 Java Hadoop
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
103 1
|
4月前
|
分布式计算 Hadoop Unix
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
Hadoop-28 ZooKeeper集群 ZNode简介概念和测试 数据结构与监听机制 持久性节点 持久顺序节点 事务ID Watcher机制
68 1
|
4月前
|
存储 SQL 消息中间件
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
Hadoop-26 ZooKeeper集群 3台云服务器 基础概念简介与环境的配置使用 架构组成 分布式协调框架 Leader Follower Observer
72 0
|
5月前
|
负载均衡 API 数据安全/隐私保护
Zookeeper的客户端-原生的API
Zookeeper的客户端-原生的API
|
7月前
|
API
【想进大厂还不会阅读源码】ShenYu源码-替换ZooKeeper客户端
ShenYu源码阅读。相信大家碰到源码时经常无从下手,不知道从哪开始阅读😭。我认为有一种办法可以解决大家的困扰!至此,我们发现自己开始从大量堆砌的源码中脱离开来😀。ShenYu是一个异步的,高性能的,跨语言的,响应式的 API 网关。
|
8月前
|
Java 网络安全
分布式系统详解--框架(Zookeeper-简介和集群搭建)
分布式系统详解--框架(Zookeeper-简介和集群搭建)
149 0
|
9月前
|
Java API Apache
ZooKeeper【基础 03】Java 客户端 Apache Curator 基础 API 使用举例(含源代码)
【4月更文挑战第11天】ZooKeeper【基础 03】Java 客户端 Apache Curator 基础 API 使用举例(含源代码)
88 11
|
9月前
|
存储 负载均衡 网络协议
ZooKeeper【基础 01】简介+设计目标+核心概念+ZAB协议+典型应用场景
【4月更文挑战第10天】ZooKeeper【基础 01】简介+设计目标+核心概念+ZAB协议+典型应用场景
113 1
|
9月前
|
存储
ZooKeeper客户端常用命令
ZooKeeper客户端常用命令
84 1

热门文章

最新文章