Android设备连接ZooKeeper服务器

本文介绍了如何在Android设备上连接ZooKeeper服务器,包括ZooKeeper的基本概念、客户端脚本使用,以及Java客户端API的详细操作。在Android环境下,需要处理权限、多线程、关闭SASL认证等问题,以便成功实现与ZooKeeper的交互。
摘要由CSDN通过智能技术生成

Android设备连接ZooKeeper服务器

最近一直在学习ZooKeeper的相关知识,主要完成了用Android手机连接到ZooKeeper服务器,并进行建立节点、读取节点数据、删除节点等操作。下面对这一学习过程做一下总结。

  • 初识ZooKeeper
  • ZooKeeper客户端脚本
  • ZooKeeper Java客户端API
  • Android客户端连接ZooKeeper服务器
  • 源码示例

初识ZooKeeper
ZooKeeper是Apache开源的分布式应用程序协调服务,其设计目标是将复杂易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并为用户提供简单易用的接口。
ZooKeeper主要有以下特性:
-顺序一致性:从同一个客户端发起的事务请求,最终会严格按照其发起顺序被应用到ZooKeeper中去。
-原子性:所有事务请求的处理结果在整个集群中所有机器上的应用情况是一致的。即要么整个集群的所有机器都成功应用了某一事务,要么都没有应用。
-单一视图:无论客户端连接了哪个ZooKeeper服务器,其看到的服务端数据模型都是一致的。
-可靠性:一旦服务端成功应用了一个事务,并完成对客户端的响应,那么该事务所引起的服务端状态变更将会被一直保留下来,除非有别的事务又对其做了变更。
-实时性:ZooKeeper能保证在一定的时间段内,客户端一定能从服务端读取到最新的数据状态。

ZooKeeper客户端脚本
搭建好ZooKeeper集群后,进入ZooKeeper的bin目录,执行./zkCli.sh即可启动客户端。
这里写图片描述
这里写图片描述

-创建节点
create [-s] [-e] path data acl
-读取指定节点下所有子节点
ls path [watch]
-获取指定节点的数据内容和属性信息
get path [watch]
-更新指定节点的数据内容
set path data [version]
-删除指定节点
delete path [version]

ZooKeeper Java客户端API
-创建会话
ZooKeeper(String connectString, int sessionTimeout, Watcher watcher);
connectString指要连接的ZooKeeper服务器列表,host:port形式,多个服务器地址之间用英文逗号隔开。sessionTimeout指会话超时时间,以毫秒为单位。watcher是已经声明的Watcher类的一个对象,指定为默认的Watcher事件通知处理器。
例:ZooKeeper zk = new ZooKeeper("192.168.3.6:2181", 5000, watcher);

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值