
ZooKeeper
代码学习
代码
展开
-
Zookeeper
文档:ZooKeeper.mindmap链接:http://note.youdao.com/noteshare?id=e9ce7a2d3dcfc8906a4a05d9987f5f8b&sub=1794372A4FBB44E2B452823CFCC22D6A原创 2019-06-09 22:35:12 · 681 阅读 · 0 评论 -
分布式一致性协议——paxos算法
paxos算法到底干嘛用的?目的:paxos算法是解决分布式系统中,如何对某个值(决议)达成一致的,用于解决达成共识性问题的方法。Paxos算法需要解决的问题就是如何在一个可能发生上述异常的分布式系统中,快速且正确地在集群内部对某个数据的值达成一致。也可以理解成分布式系统中达成状态的一致性。该算法的前提是不存在拜占庭将军问题:如下图所示paxos算法角色划分:三种类型提议者(Propo...原创 2019-07-07 20:50:49 · 439 阅读 · 0 评论 -
ZooKeeper——ZAB算法
什么是ZAB算法官方解释:Zab协议 的全称是 Zookeeper Atomic Broadcast (Zookeeper原子广播)。Zookeeper 的一种支持崩溃恢复的消息广播协议所以zab协议重要的就是:消息广播协议(leader想其他节点广播事务)leader选举(快速选举过程fastleaderelection,集群刚启动时,leader崩溃或leader与集群中超过一...原创 2019-07-07 21:46:51 · 2227 阅读 · 1 评论 -
ZooKeeper基础介绍
什么是ZooKeeperZooKeeper由雅虎研究院开发,是Google Chubby的开源实现,后来托管到Apache,于2010年11月正式成为Apache的顶级项目。ZooKeeper是一个经典的分布式数据一致性解决方案,致力于为分布式应用提供一个高性能、高可用,且具有严格顺序访问控制能力的分布式协调服务。分布式应用程序可以基于ZooKeeper实现数据发布与订阅、负载均...原创 2019-07-06 16:17:19 · 200 阅读 · 0 评论 -
分布式一致性协议——2pc、3pc算法
什么是2pc算法2pc又称为二阶段提交协议,即将事务的提交过程分为两个阶段来进行处理:准备阶段和提交阶段,解决了分布式原子性问题事务的发起者称协调者,事务的执行者称参与者。2pc算法过程阶段1:准备阶段1、协调者向所有参与者发送事务内容,询问是否可以提交事务,并等待所有参与者答复。2、各参与者执行事务操作,将操作信息记入事务日志中(但不提交事务)。3、如参与者执行成功,给协调者反...转载 2019-07-06 17:05:51 · 702 阅读 · 1 评论 -
Zookeeper底层实现数据一致性
主要通过事务日志以及数据快照来实现的。事务日志事务日志记录了对Zookeeper的操作。以zxid命名,可以快速的定位到查询的事务。它还采用了磁盘预分配策略,未使用的部分写为0,避免每次追加数据都需要磁盘IO为文件开辟新空间。其每个日志文件大小固定为64M。数据快照数据快照:是Zookeeper数据存储的另一个非常重要的机制。用来记录某一时刻Zookeeper全部内存数据内容,将其写入到指...转载 2019-08-13 14:48:53 · 236 阅读 · 0 评论