没有合适的资源?快使用搜索试试~ 我知道了~
zookeeper分布式协作简介
4星 · 超过85%的资源 需积分: 9 126 下载量 37 浏览量
2013-01-05
17:03:46
上传
评论 1
收藏 193KB DOC 举报
温馨提示
试读
11页
Hadoop下的一个子项,运用通用分布式锁,实现分布式应用通用协调系统的功能
资源推荐
资源详情
资源评论
软工 级孙亚
数据模型
的节点
的顺序号
的 接口
工作原理
的角色
的读写机制
)原子多播
)选举算法
)工作流程
典型的应用场景
统一命名服务( !"#)
配置管理($%& ' &!)
集群管理(('!)*)
共享锁(+)
队列管理
一个实例
1.Instruction
是一个协同工作(或称协作支持)系统,分布式应用可以使用 来
存储和协调关键共享状态。
保证用户读取的数据是最新的;当用户正在查看的数据被修改时,保证用户
会被即时通知;保证来自一个用户的所有请求会被按顺序处理;保证所有用户得到的数据
是一致的。是(&,的$*))- 一个开源的实现,是. 的分布式协调服务,
它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服
务等
2.数据模型
会维护一个具有层次关系的数据结构,它非常类似于一个标准的文件系统,如图
所示:
图 1
Zookeeper 数
据结构
这
种数据结构有
如下这些特点:
每个子
目录项
如
!"#都被称作为 ,这个是被它所在的路径唯一标识,如
"#这个的标识为/ !"#/"#
可以有子节点目录,并且每个可以存储数据,注意0.0'01+类型
的目录节点不能有子节点目录
是有版本的,每个中存储的数据可以有多个版本,也就是一个访问路
径中可以存储多份数据
可以是临时节点,一旦创建这个的客户端与服务器失去联系,这个
也将自动删除,的客户端和服务器通信采用长连接方式,每个客
户端和服务器通过心跳来保持连接,这个连接状态称为,如果是临时
节点,这个失效,也就删除了
的目录名可以自动编号,如已经存在,再创建的话,将会自动命名为
1.Zookeeper 的节点
可以被监控,包括这个目录节点中存储的数据的修改,子节点目录的变化等,一
旦变化可以通知设置监控的客户端,这个是的核心特性,的很多功能
都是基于这个特性实现的。
有两种类型,短暂的(*! ,)和持久的(); 的类型在创建时
确定并且之后不能再修改;短暂 的客户端会话结束时, 会将该短暂
删除,短暂 不可以有子节点;持久 不依赖于客户端会话,只有当客户端明确
要 删 除 该 持 久 时 才 会 被 删 除 ; 有 四 种 形 式 的 目 录 节 点 ,
01""202、01""2023"04502+、0.0'01+、0.0'01+3"04502
+
2.znode 的顺序号
创建 时设置顺序标识, 名称后会附加一个值
顺序号是一个单调递增的计数器,由父节点维护
在分布式系统中,顺序号可以被用于为所有的事件进行全局排序,这样客户端可以通过顺
序号推断事件的顺序
3.Zookeeper 的 API 接口
"& 6"&7 *8)-9:7 8+;$+<7 ,8$ '7 '=
" >6"&7 *8), 7? *=
#,6"&7 *87#=
+;"&<&$*,6"&7 *8), 7? *=
+;"&<&$*,6"&7 *8), 7? *=
" @ 6"&7 *8)-9:7 87#=
)-9:&@ 6"&7 *8), 7? *8" 7 =
# *%6"&7*!8)-9:7 *=
" $+6"&7 *8+;$+<7 ,87#=
+;$+<&$+6"&7 *8" 7 =
ZooKeeper 基本的操作示例
// 创建一个与服务器的连接
ZooKeeper zk = new ZooKeeper("localhost:" + CLIENT_PORT,
ClientBase.CONNECTION_TIMEOUT, new Watcher() {
// 监控所有被触发的事件
public void process(WatchedEvent event) {
System.out.println("已经触发了" + event.getType() +
"事件!");
剩余10页未读,继续阅读
资源评论
- zhuchuyi2013-08-16对zookeeper的特点和使用讲得比较清楚,不过典型场景里没有提供详细的例子。
- he1109he2014-02-02很不错的资源,有参考价值。谢谢分享。
- arienchen2013-08-27only a few pages, suggest to review at Apache Home page in stead.
SHOUGOUGOU
- 粉丝: 2
- 资源: 2
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功