Time:2021-01-19
paxos
ZooKeeper是分布式的协调服务,它提供可靠、快速的服务,那么它是如何保证可靠性、一致性、快速等特点呢?那就是通过paxos,paxos是一个基于消息传递的一致性算法,是Leslie Lamport于1990年提出,被广泛用于分布式计算中,Google的Chubby、Apache的ZooKeeper都是基于他的理论来实现的。paxos只有在一个可信的计算环境中才能成立,这个环境是不会被入侵破坏的。
paxos简单介绍可以参考
ZAB
ZAB即ZooKeeper Automatic Broadcast(ZooKeeper的原子广播协议)。作用在ZooKeeper有leader时的可用状态,能在可用状态下更好的同步数据。ZAB是paxos的一种实现方式。
原子:follower向leader发送创建节点的请求要么失败(如节点已经存在)要么成功,leader向每个follower维持一个队列,通过队列向follower发送写命令。如果leader挂掉,那么将停止对外提供服务&#