您的位置:首页 > 其它

zookeeper初探(一)

2016-02-28 22:34 169 查看
ZooKeeper是源代码开放的分布式协调服务,由雅虎创建,是Google Chubby的开源实现。ZooKeeper是一个高性能的分布式数据一致性解决方案,它将那些复杂的、容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并提供一系列简单易用的接口给用户使用.

一、zookeeper是分布式协调服务,它主要解决了分布式数据一致性问题:

A:顺序一致性  B:原子性  C:单一视图

D:可靠性  E:实时性

二、zookeeper的优势:

A、源代码开放

B、已经被证实是高性能,易用稳定的工业级产品

C、有着广泛的应用:Hadoop,HBase,Storm

三、zookeeper的基本概念

1.角色有三种,分别为:Leader,Follower,Observer,

Leader服务器是整个Zookeeper集群工作机制中的核心

Follower服务器是Zookeeper集群状态的跟随者

Observer服务器充当一个观察者的角色

可以说没有角色这种东西,就没有zookeeper。

2.会话

会话是指客户端和ZooKeeper服务器的连接,ZooKeeper中的会话叫Session,客户端靠与服务器建立一个TCP的长连接

来维持一个Session,客户端在启动的时候首先会与服务器建立一个TCP连接,通过这个连接,客户端能够通过心跳检测与服务器保持有效的会话,也能向ZK服务器发送请求并获得响应

3.数据节点

Zookeeper中的节点有两类

A.集群中的一台机器称为一个节点

B.数据模型中的数据单元Znode,分为持久节点和临时节点

Zookeeper的数据模型是一棵树,树的节点就是Znode,Znode中可以保存信息

4.版本

版本类型说明
version当前数据节点数据内容的版本号
cversion当前数据节点子节点的版本号
aversion当前数据节点ACL变更版本号
5.watcher(事件监听器)

ZooKeeper允许用户在指定节点上注册一些Watcher,当数据节点发生变化的时候,ZooKeeper服务器会把这个变化的通知发送给感兴趣的客户端。

6.ACL权限控制

ACL是Access Control Lists 的简写, ZooKeeper采用ACL策略来进行权限控制,有以下权限:

CREATE:创建子节点的权限

READ:获取节点数据和子节点列表的权限

WRITE:更新节点数据的权限

DELETE:删除子节点的权限

ADMIN:设置节点ACL的权限

未完待续============

参考文章

http://www.ibm.com/developerworks/cn/data/library/bd-zookeeper/

/article/4629796.html

http://blog.csdn.net/goliathray/article/details/8565801

查看原文:http://www.baowenwei.com/archives/841
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: