Zookeeper实例ZkClient API-创建一个Zookeeper客户端

来源:互联网 发布:淘宝店铺怎么举报买家 编辑:程序博客网 时间:2024/05/29 23:45


import java.io.IOException;import org.I0Itec.zkclient.ZkClient;/** * * @ClassName: Create_Session_Sample * @Description: TODO(使用ZkClient来创建一个ZooKeeper客户端) * @author * @date 2017年6月14日 下午12:46:49 * */public class Create_Session_Sample {    public static void main(String[] args) throws IOException, InterruptedException {    ZkClient zkClient = new ZkClient("localhost:2181", 5000);    System.out.println("ZooKeeper session established.");    }}输出:ZooKeeper session established.


注意:

Zookeeper客户端调用是一个异步的过程,而ZkClient通过内部包装,将这个异步的绘画创建过程同步化了,构造方法中的IZkConnection是对Zookeeper原生接口的包装,也是Zookeeper最直接的交互层,里面包含两种实现,分别是ZkConnection和InMemoryConnection,前者是我们最长用的实现方式,之前提到过Zookeeper的节点内容只支持字节数组(byte[]),也就是说Zookeeper不负责内容的序列化,ZkClient中定义了ZkSerializer接口,允许用户传入一个序列化的实现,默认情况下使用Java自带的序列化方式进行对象的序列化。

ZkClient的构造方法中不再提供传入Watcher对象的参数了,而是引入了大多数Java程序都使用的Listener来实现Watcher注册。


扩展






参考

1.《从Paxos到Zookeeper:分布式一致性原理与实践》

2. http://javadox.com/com.101tec/zkclient/0.4/org/I0Itec/zkclient/ZkClient.html

阅读全文
0 0