从paxos到zookeeper读书笔记(第四章)

zookeeper提供分布式协调服务,提供诸如统一命名服务、配置管理和分布式锁、分布式消息等分布式的基础服务。zookeeper的zab(zookeeper atomic broadCast),是paxos的一种改进。zookeeper是一个典型的分布式数据一致性的解决方案,分布式应用可以基于zookeeper实现发布\订阅、负载均衡、命名服务、分布式协调\通知、集群管理/master选举、分布式锁、和分布式队列等功能。

zookeeper可以保证各种分布式一致性问题:顺序一致性、原子性、单一视图、可靠性、实时性。

zookeeper的设计目标: 提供简单的数据模型、可以构建集群、顺序访问、高性能。

简单的数据模型:zookeeper提供了一个共享的、树型结构的命名空间来进行相互协调,这些数据结构都存在内存中,可以提高吞吐量。

构建分布式集群:


顺序访问:来自于client的事务,zookeeper都会分配一个全局唯一的递增ID,这个ID反应了客户端执行的顺序。

高性能:zookeeper将全部数据结构存在内存中,并直接服务于客户端的非事务请求。


zookeeper概念:

集群角色

在分布式系统中,典型的应用是master/slave 主从模式的架构,提供全局写操作的节点为master,通过异步复制的节点叫做slave。在zookeeper中,提出了leader、Follower、Observer。follower选举产生leader,observer提供读服务,所以zookeeper适用于读多写少的服务。

回话角色:

回话(session):当zookeeper客户端启动的时候,会与zookeeper建立一个长连接,zookeeper能够通过向client发送心跳检测client的状态,通过zookeeper管理zookeeper的client(zookeeper的client为分布式应用的各个节点)。

数据节点:

在分布式应用中,一个是zookeeper管理的节点即为应用节点-机器节点,另一个节点类型为数据节点-znode,管理zookeeper数据模型的数据单元(zookeeper管理节点的数据)。zookeeper为树型数据模型(Znode Tree) , 通过/分割的路径就是一个ZNode,比如/foo/path1 , 为一个ZNode节点,保存数据内容和属性信息。

版本:

zookeeper存放znode的版本。

watcher:

zookeeper允许用户注册事件,在某个时候触发事件,分配给合适的client执行事件,watcher机制是zookeeper实现分布式协调服务的重要特征。

ACL机制:

zookeeper提供类似linux的权限控制机制。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
PaxosZookeeper:分布式一致性原理与实践》从分布式一致性的理论出发,向读者简要介绍几种典型的分布式一致性协议,以及解决分布式一致性问题的思路,其中重点讲解了Paxos和ZAB协议。同时,本书深入介绍了分布式一致性问题的工业解决方案——ZooKeeper,并着重向读者展示这一分布式协调框架的使用方法、内部实现及运维技巧,旨在帮助读者全面了解ZooKeeper,并更好地使用和运维ZooKeeper。全书共8章,分为五部分:第一部分(第1章)主要介绍了计算机系统从集中式向分布式系统演变过程中面临的挑战,并简要介绍了ACID、CAP和BASE等经典分布式理论;第二部分(第2~4章)介绍了2PC、3PC和Paxos三种分布式一致性协议,并着重讲解了ZooKeeper中使用的一致性协议——ZAB协议;第三部分(第5~6章)介绍了ZooKeeper的使用方法,包括客户端API的使用以及对ZooKeeper服务的部署与运行,并结合真实的分布式应用场景,总结了ZooKeeper使用的最佳实践;第四部分(第7章)对ZooKeeper的架构设计和实现原理进行了深入分析,包含系统模型、Leader选举、客户端与服务端的工作原理、请求处理,以及服务器角色的工作流程和数据存储等;第五部分(第8章)介绍了ZooKeeper的运维实践,包括配置详解和监控管理等,重点讲解了如何构建一个高可用的ZooKeeper服务。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值