zookeeper学习之java api查找并删除节点<五>
2017-09-03 00:00
661 查看
摘要: zookeeper
听说好兄弟 康要当爸爸了,哎哟,巧了,今天写点zk的读取数据,getchildren,zk的api套路相信你也熟悉了吧,总是有区分同步和异步的接口,获取节点数据也是一样的,我的套路也是一样的,柿子先拿软的捏。
来看看 最简单的get孩子,这边两个参数写的很明白,路径,和是否注册watch,watcher会被触发当删除节点或者删除,创建了子节点,返回结果不保证是排序的,其中不存在就抛出KeeperException。
临摹《从Paxos到Zookeeper》的代码,我的脑袋要生锈啦。
这边在/zk-souche 下面创建了一个子节点,然后又创建了一个子节点/che2
但是你发现创建另一个子节点/che2的时候,我们还是打出了日志。
你忘了我们在创建的时候是注册了一个watcher,这边传的是true和false 用的是默认的watcher,这边的wather一旦触发以后,就失效了,需要反复注册的。
在真的工作的方法中用WatchRegistration注册一个默认watcher,这边还可看到h.setType(ZooDefs.OpCode.getChildren),就是上篇说到的RequestHeader,难道服务器用header里面的code作区分吗?然后可以看到response用了GetChildrenRequest,
了
这边看到ZooDefs.OpCode定义 ,看到很多定义,只是截图了一部分
异步方法的套路也是一样,注册一个异步回调函数。
ctx:说是用来传递上下文信息,目前没看到怎么用
stat:用来存放节点信息,传入原来的stat,方法执行后悔返回新的
还有一个是获取节点的内容 getData,同步与异步,使用系统默认的watcher或者传入一个
使用起来就是这样的,其中数据监听器,看的不仅仅是value的变化 ,而是数据版本的变化。
这些文档写的也是类似的,难道是自动生成的吗 哈哈哈
设置RequestHeader type为getdata,用了GetDataResponse
其中删除也是类似的,同步方法 和异步方法
这个方法参数比较简单,version是版本号,-1是匹配所有的版本号,这边的删除这是不能递归删除。
有点懂它的套路啦,这边RequestHeader 设置type 为detele,只是都不用response
听说好兄弟 康要当爸爸了,哎哟,巧了,今天写点zk的读取数据,getchildren,zk的api套路相信你也熟悉了吧,总是有区分同步和异步的接口,获取节点数据也是一样的,我的套路也是一样的,柿子先拿软的捏。
来看看 最简单的get孩子,这边两个参数写的很明白,路径,和是否注册watch,watcher会被触发当删除节点或者删除,创建了子节点,返回结果不保证是排序的,其中不存在就抛出KeeperException。
临摹《从Paxos到Zookeeper》的代码,我的脑袋要生锈啦。
这边在/zk-souche 下面创建了一个子节点,然后又创建了一个子节点/che2
但是你发现创建另一个子节点/che2的时候,我们还是打出了日志。
你忘了我们在创建的时候是注册了一个watcher,这边传的是true和false 用的是默认的watcher,这边的wather一旦触发以后,就失效了,需要反复注册的。
在真的工作的方法中用WatchRegistration注册一个默认watcher,这边还可看到h.setType(ZooDefs.OpCode.getChildren),就是上篇说到的RequestHeader,难道服务器用header里面的code作区分吗?然后可以看到response用了GetChildrenRequest,
了
这边看到ZooDefs.OpCode定义 ,看到很多定义,只是截图了一部分
异步方法的套路也是一样,注册一个异步回调函数。
ctx:说是用来传递上下文信息,目前没看到怎么用
stat:用来存放节点信息,传入原来的stat,方法执行后悔返回新的
还有一个是获取节点的内容 getData,同步与异步,使用系统默认的watcher或者传入一个
使用起来就是这样的,其中数据监听器,看的不仅仅是value的变化 ,而是数据版本的变化。
这些文档写的也是类似的,难道是自动生成的吗 哈哈哈
设置RequestHeader type为getdata,用了GetDataResponse
其中删除也是类似的,同步方法 和异步方法
这个方法参数比较简单,version是版本号,-1是匹配所有的版本号,这边的删除这是不能递归删除。
有点懂它的套路啦,这边RequestHeader 设置type 为detele,只是都不用response
相关文章推荐
- zookeeper学习之java API会话建立<四>
- zookeeper学习之java api权限控制<七>
- zookeeper学习之java api<六>
- elasticsearch 学习博客系列<五> ES 中 index-doc 的 更新(java)
- zookeeper学习之节点数据模型<十一>
- Zookeeper系列(八)Zookeeper客户端(JAVA)API之修改、删除节点
- zookeeper学习之zkclient节点增删改查<九>
- java学习笔记<五>instanceof运算符
- <Head First Java>学习笔记--第六章:认识Java的API
- elasticsearch 学习博客系列<四> ES 中 index-doc 的 删除(java)
- ZooKeeper之Java客户端API使用—删除节点。
- Java笔记4 JavaAPI<2>TreeSet、Comparator、泛型
- SQL Server XML基础学习之<6>--XML modify() 方法对 XML 数据中插入、更新或删除
- Java笔记4 JavaAPI<4>集合(Arrays)、Collections
- 在shuiguo.xml文件中第三个水果中的苹果节点中添加节点<小苹果>small apple</小苹果>,添加小苹果后将其文本内容修改为“小苹果”,修改该节点后将其父节点苹果(即第三个苹果元素)删除
- 【Android开发学习45】使用google语音识别引擎(Google Speech API)<一>
- Android NDK学习 <五> C++ 支持
- Delphi-IOCP学习笔记<五>===测试IOCP工作线程处理队列顺序
- Java笔记4 JavaAPI<1>集合框
- 链表问题之无头单链表删节点<Java实现>