分布式一致性原理与实践(学习笔记)

ZAB协议:

ZAB协议是分布式写条服务zookeeper专门设计的一种,支持崩溃恢复的原子广播协议。其基本工作原理如下图所示:

这里写图片描述

协议介绍:

角色构成:

leader、fellower、watcher;

产生机制:

动态选举产生;

选举算法:

当过半的机器,支持某个机器时(包括其自身),该机器即为leader;相反,当其与过半机器断开,则leader地位丧失。所以一个由3节点组成的zookeeper集群,挂掉一个,依然可用,因为剩下机器数为2>=3/2;

ZAB协议的两种基本模式:

1.崩溃恢复;
2.消息广播;
崩溃恢复:

启动过程中,或leader发生网络终端、崩溃退出、重启等异常情况,导致其与过半节点不能通信,丧失对集群的“控制权“时,总之就是集群没有一个“合法“且对集群“控制力“的“中央政府“(leader角色)时,ZAB协议会进入恢复模式,并选举产生新的leader服务器。这个过程类似人类社会的由“乱“到“治“的过程。

消息广播:

当选举产生新的leader,并且集群过半机器与该leader完成状态同步之后,ZAB协议退出崩溃恢复模式,而进入消息广播模式,即为ZAB协议的一般工作模式。

新加入集群的机器——> 数据恢复模式:与leader进行数据同步——>消息广播模式

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值