关于ZooKeeper(三) 领导者选举,原子广播,一致性,会话, 状态

运行模式:独立模式/复制模式

复制模式:半数以上提供服务则正常工作,通常奇数个机器

高可用:

集合体中半数以上机器处于可用状态,并确保对znode的每个修改会被复制到超过半数以上的机器上。如果少于半数的机器出现故障,则至少有一台机器上有最新的状态,其余机器也会更改到这个状态

实现协议:Zab协议:无限重复的两个阶段领导者选举和原子广播

领导者选举

    所有机器通过一个选择过程选举领导者leader,其余机器为follower,半数以上follower与leader状态同步,则阶段完成

原子广播

    所有写请求转发给leader,leader广播给follower,半数以上follower持久化更改后,leader提交更新,通知客户端成功

    任何znode都可以提供读请求


一致性

客户端无法知道自己是不是连到了与领导者状态一致的节点上

所有更新都有编号,严格按照编号顺序执行更新z1<z2,则z1一定发生在z2之前

    > 顺序一致性:顺序更新

    > 原子性:操作原子性,要么成功,要么失败

    > 单一系统映像:客户端连接到任意一台服务器,看到的都是同样的视图,滞后于当前视图的机器不会接受连接请求

    > 持久性:更新不可撤销

    > 及时性:强迫客户端连接较新的服务器


会话

    > 建立会话:客户端维护服务器列表,逐个尝试连接,直到成功

    > 会话:有超时设置,服务器在时间范围未接收到请求,则会话过期,会话相关znode撤销,无法重新打开,需要重建

    > 维持会话:客户端定期发送ping请求

    > 故障切换:自动故障切换不会影响原来的会话


状态

CONNECTING连接中 

CONNECTED连接

CLOSED关闭


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值