文档章节

zookeeper学习之java API会话建立<四>

woshixin
 woshixin
发布于 2017/08/29 23:20
字数 662
阅读 24
收藏 0

 在上一篇zk中简单玩了下api的连接创建会话,也总是留下了很多坑,就是那些引申开来,搞不明白的问题。有时候想追究起来,问题总是那么无穷无尽,有时候问题比答案更有力度吧,到最后都是些哲学问题吗?存在的这一切,还是一切归于虚无,小时候总是被教育要讲科学,但是感觉科学怎么那么没有温度,不如哲学问题那么温暖人心。

    瞎逼逼好了,这里还是写点java api的使用吧,不如写点代码

文档地址 3.5.3 :http://zookeeper.apache.org/doc/r3.5.3-beta/api/index.html

    3.5.3的beta版本里面有很多个创建方法(比3.4.X又丰富了api),开始我们总是拿最简单的那个开始,没错,就是第一个,这是一个同步创建的接口。

 执行的结果 很满意

这边的参数文档说明

   path  路径,已经已经存在了,会报创建节点已经存在的从错误(KeeperException.NodeExists),并且zookeeper api不支持递归创建,就是不能在父节点不存在的情况下(KeeperException.NoNode),创建子节点,第三方的工具封装了,可以省下很多活。

    data 数据,这个目前zookeeper只支持数组 buty[],就是说需要我们自己序列化,复杂对象可以使用第三方工具来序列化,那我想存复杂对象的场景是怎么样的。

    acl 权限控制,这边使用了Ids.OPEN_ACL_UNSAFE

createMode 节点mode,下面的解释也很清晰,上面我们创建的是临时节点,会话结束 就 die啦,还有持久型的,都有顺序型,后面补上两种带TTL的,当没有子节点的时候,自动删除。

  我们看看 创建顺序节点,顺序总是有应用场景的

日志:

 其他都是类似的,还有一个异步创建的的

日志:

    异步创建还是方便的,其中主要是 AsyncCallback的实现,回调接口好多,不看了,其中stat是节点zhuagn状态。

  里面就一个方法,参数的说明也在下面

    在创建的时候

    设置RequestHeader,CreateRequest和CreateResponse,这个套路很熟悉呀,不过ReplyHeader是干嘛的,暂时不知道,最后执行的就是我们io处理的

ClientCnxn对象啦。

    在cnxn里面:把数据封装到了packet中处理,到了这一层,居然把数据统一到packet啦,这边的注解写的 xid只是在实际发送的地方生成。

 

微信公众号

© 著作权归作者所有

woshixin
粉丝 31
博文 355
码字总数 269872
作品 0
杭州
程序员
私信 提问
[ZooKeeper]基于Java API 实践

前提 建立maven项目中 要导入zookeeper的依赖 我们同时可以打开linux中的zookeeper客户端来验证对比。输入 zkCli.sh 便可以进入zookeeper客户端 。 一、建立连接 直接建立连接后,不进行等待...

瑾兰
2018/06/13
0
0
zookeeper系列(八)zookeeper运维

zookeeper运维 zookeeper配置详解 一、ZK的最小配置 最小配置是指Zookeeper运行所需的最小配置,Zookeeper只需要配置这些项就可以正常的运行Zookeeper。 clientPort 配置ZK监听客户端连接的端...

chenkangyao
2018/08/07
0
0
ZooKeeper学习笔记-CentOS7.5安装ZooKeeper

ZooKeeper学习笔记-CentOS7.5安装ZooKeeper 安装java环境 安装ZooKeeper 安装java环境 你ZooKeeper的运行需要java环境。 下载 如未安装java环境,下载最新版本的java: https://www.oracle.c...

Super_RD
2018/12/04
0
0
ZooKeeper Java例子(四)

A Simple Watch Client 为了向你介绍ZooKeeper Java API,我们开发了一个非常简单的监视器客户端。ZooKeeper客户端监视一个ZooKeeper节点的改变并且通过开始和停止一个程序来作出响应。 必备条...

chenkangyao
2018/08/02
0
0
ZooKeeper JAVA API 之环境准备和创建会话

Zookeeper是一个开放源代码的分布式协调服务,由雅虎创建,是Google Chubby的开源实现。Zookeeper的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的元语集,...

引鸩怼孑
2015/05/03
0
0

没有更多内容

加载失败,请刷新页面

加载更多

nproc systemd on CentOS 7

Increasing nproc for processes launched by systemd on CentOS 7 Ask Question I have successfully increased the nofile and nproc value for the local users, but I couldn't find a p......

MtrS
42分钟前
3
0
了解微信小程序下拉刷新功能

小程序提供了这个事件。 onPullDownRefresh() 监听用户下拉刷新事件。 如果要开启下拉刷新功能,要先到json配置: "enablePullDownRefresh":true 配置后下拉有反应了但是没有加载效果,在onP...

oixxan__
今天
2
0
springmvc java对象转json,上传下载(未完)拦截器Interceptor以及源码解析(未完待续)

package com.atguigu.my.controller;import java.util.Collection;import org.springframework.beans.factory.annotation.Autowired;import org.springframework.stereotype.Contr......

architect刘源源
今天
29
0
[日更-2019.5.24、25、26] Android系统中的Binder通信机制分析(一)--servicemanager

声明 其实对于Android系统Binder通信的机制早就有分析的想法,记得去年6、7月份Mr.Deng离职期间约定一起对其进行研究的,但因为我个人问题没能实施这个计划,留下些许遗憾... 最近,刚好在做...

Captain_小馬佩德罗
昨天
24
0
聊聊dubbo的DataStore

序 本文主要研究一下dubbo的DataStore DataStore dubbo-2.7.2/dubbo-common/src/main/java/org/apache/dubbo/common/store/DataStore.java @SPI("simple")public interface DataStore { ......

go4it
昨天
3
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部