zookeeper的基本原理介绍

发布时间:2021-08-12 15:08:23 作者:chen
来源:亿速云 阅读:144

本篇内容介绍了“zookeeper的基本原理介绍”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

基本原理

zookeeper的基本原理介绍

server很多,有主从之分,不过有一个leader,其他是follower,

每个server,在内存中存有一份数据,启动时,将选举出一个leader,根据paxos协议选举

leader负责处理数据更新操作,用到zab协议

一个更新操作成功的标志,大多数server在内存,成功修改数据(一个有5个,有3个写成功了)

zookeeper角色

zookeeper的基本原理介绍

怎么知道大多数写成功了,用到领导者发起投票,领导者收到3个投票,就是大部分写成功了。

学习者(learner)分为跟随者(follower),观察者(ObServer)
高可用,比如两个节点挂了,还是可以对外提供服务,为了支持更多客户端,需要增加server

server增多,会导致投票延迟增大,因为投票需要半数以上的投票成功,才认为是成功的

假设其中一个Server比较磨叽慢网络慢,zookeeper会权衡伸缩性和吞吐率,引入了一个observer

好处(1)不参与投票过程,只同步领导者状态,接收client连接,请求转发给领导者,这样follower跟领导者连接就少了,这样就不会影响,因为高并发,负载过高而挂掉,所以说observer可以分担一部分压力(2)当加入更多的observer之后,可以提gao整个zookeeper的伸缩性,还不影响吞吐率。

  1. leader选举算法采用了paxos协议。

  2. paxos核心思想是当多数server写成功,则任务数据写成功。

    1)如果有3个server,则需要两个写成功即表示任务数据写成功。

    2)如果有4个或5个server,则需要三个写成功即表示任务数据写成功。

  3. server数目一般为奇数个,例如3,5,7等等,

    1)如果有3个server,则最多允许1个server挂掉。(有两个写成功,表示成功)

    2)如果有4个server,则同样最多允许1个server挂掉(有三个写成功,表示成功)

zookeeper的基本原理介绍

client给server发送请求,如果server1不是leader,server1会把请求转发给leader,leader会将请求广播给各个server,各个server写成功后,通知leader,当收到大多数server通知成功,表示写成功了

“zookeeper的基本原理介绍”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

推荐阅读:
  1. 二、zookeeper--基本原理
  2. zookeeper ZAB协议的详细介绍

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

zookeeper

上一篇:Linux中怎么对文件进行按大小进行排序

下一篇:python 中怎么统计单词并排序

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》