ZooKeeper是作为分布式应用建立更高层次的同步(synchronization)、配置管理 (configuration maintenance)、群组(groups)以及名称服务(naming)。在编程上,ZooKeeper设计很简单,所使用的数据模型风格很像文件系统的目录树结构,简单来说,有点类似windows中注册表的结构,有名称,有树节点,有Key(键)/Value(值)对的关系,可以看做一个树形结构的数据库,分布在不同的机器上做名称管理。
zookeeper思想非常简单,即保证对znode的修改都复制到ensemble的其他机器中,如果小范围出现故障,其他机器的备份可以恢复最新状态
zookeeper使用zab协议分为两个阶段
一 ensemble中机器参与一个选择领导者的进程,选择完成后大部分跟随者与领导者完成同步后,该阶段完成。
二 用户写操作发送给领导者,通过广播发送给跟随者,如果大部分跟随者完成修改后,领导者返回更新成功。
如果领导者失败,会重新选举领导者,原有领导者恢复成为跟随者。
当更新时不时直接更新znode内存中的信息,而是先将信息写入本地磁盘,读请求可能由任何机器服务,因为是内存查找非常快。
zookeeper使用顺序一致性,即根据客户发送更新的顺序来保证数据的一致性,它不会让客户端看到过时信息,会强制客户转到一个更新的服务器上。
zookeeper由内存提供读操作从而提升性能,但是这可能造成数据不同步,为保证数据同步,处理读取的机器将调用sync强制机器读取znode上的信息。
zookeeper由客户端与服务器组成,客户端连接服务器端会为其创建一个会话,会话有超时时段,通过会话接受请求及响应和状态检查,会话可以在未过期的时间段内
被重新建立(不同机器),注意超时后连接是可以恢复的,过期时不可以的,就像连接池的重用。
zookeeper watch起到了解znode状态改变的功能,客户可以在znode上注册watch来达到监听的目地。
分享到:
相关推荐
细细品味Hadoop_第16期_ZooKeeper简介及安装_V1.2细细品味Hadoop_第16期_ZooKeeper简介及安装_V1.2
ZooKeeper简介和概念知识
Zookeeper简介及核心概念
Zookeeper简介及核心概念.html
1 ZooKeeper 简介.md
zookeeper简介(3)共2页.pdf.zip
zookeeper简介(1)共3页.pdf.zip
zookeeper的介绍和安装步骤,可供初学者了解zookeeper,还有安装步骤
【大数据入门笔记系列】第二节 Zookeeper简介前言Zookeeper简介应用场景实质作用选举方式方式一(初次启动)方式二(宕机选举)脑裂问题跳转 前言 上一节介绍了,Zookeeper是一种分布式的、开放源码的分布式应用程序...
NULL 博文链接:https://chengjianxiaoxue.iteye.com/blog/2168799
zookeeper简介 zookeeper数据模型 zookeeper单机安装 zookeeper常用shell命令 zookeeper的Acl权限控制 zookeeper的javaApi zookeeper 事件监听机制 zookeeper 集群搭建 一致性协议:zab协议 zookeeper的leader选举 ...
使用Java API操作zookeeper ,包括增删改查操作 事件监听等 包含相应的jar
ZooKeeper入门简介及配置使用 ZooKeeper 是⼀一个为分布式应⽤用所设计的分布的、开源的协调服务。分布式的应⽤用 可以建⽴立在同步、配置管理、分组和命名等服务的更⾼高级别的实现的基础之上。 ZooKeeper 意欲设计...
ZooKeeper简介 ZooKeeper:分布式应用的协调服务 ZooKeeper是一个分布式的开源协调服务,用于分布式应用程序。它公开了一组简单的原子操作,分布式应用程序可以构建这些原子操作,以实现更高级别的服务,以实现同步...
徐老师大数据-001.ZooKeeper简介.mp4、徐老师大数据-002.ZooKeeper下载与安装.mp4、徐老师大数据-003.ZooKeeper分布式集群配制与Leader宕机测试.mp4、徐老师大数据-004.ZooKeeper分布式集群配制与nc Linux命令的网络...
本书从Hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍Hadoop这一高性能处理海量数据集的理想工具。全书涉及的主题包括:Haddoop简介;...ZooKeeper简介,最后还提供了丰富的案例分析。