Zookeeper主要用在分布式应用中实现一致性协调调度服务。它的命名空间类似传统文件系统,每个节点都以唯一的路径进行标识,不同的是,每个节点除了可以拥有子节点外,还可拥有相对性的data数据。

一、Zookeeper命名空间

大学生就业培训,高中生培训,在职人员转行培训,企业团训

上图是一个典型的Zookeeper命名空间结构,通过路径"/app1/p_1"可访问znode1节点,每个节点可存储少量数据,如状态、配置、位置信息等等,且data信息量很小,一般在byte到KB级别。节点znode维护一个状态stat结构(包括数据变化的版本号、ACL变化、时间戳),以允许缓存验证与协调更新。每当节点数据内容改变时,多一个版本号,类似HBase。客户端获取数据的同时也获取相对应的版本号。节点数据内容以原子方式读写,读操作会读取该znode的全部data数据,同样写操作也会覆盖该znode的全部data数据,不存在部分读写的情况。同时,每个节点有一个访问控制列表ACL(Access Control List)来约束访问操作,即具有权限控制。

znode存在两种:

常规的znode: 由用户显式创建和删除

ephemeral znode:临时型znode, 其生命周期伴随于创建它的session, session结束后,ZooKeeper Server会自动删除它,当然用户也可以显式的删除

 

二、Zookeeper的Watches

延伸阅读

学习是年轻人改变自己的最好方式-Java培训,做最负责任的教育,学习改变命运,软件学习,再就业,大学生如何就业,帮大学生找到好工作,lphotoshop培训,电脑培训,电脑维修培训,移动软件开发培训,网站设计培训,网站建设培训学习是年轻人改变自己的最好方式