千家信息网

Zookeeper的基础知识

发表于:2026-11-01 作者:千家信息网编辑
千家信息网最后更新 2026年11月01日,这篇文章的知识点包括:Zookeeper的概念、Zookeeper的角色介绍、Zookeeper的选举介绍、Zookeeper的角色作用、Zookeeper中的zab协议以及Zookeeper的节点,
千家信息网最后更新 2026年11月01日Zookeeper的基础知识

这篇文章的知识点包括:Zookeeper的概念、Zookeeper的角色介绍、Zookeeper的选举介绍、Zookeeper的角色作用、Zookeeper中的zab协议以及Zookeeper的节点,阅读完整文相信大家对Zookeeper有了一定的认识。

ZooKeeper概念

ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。ZooKeeper的目标就是封装好复杂易出错的关键服务,将简单易用的接口和性能高效、功能稳定的系统提供给用户。ZooKeeper包含一个简单的原语集,提供Java和C的接口

【一、Zookeeper中的角色】
①领导者(leader)Leader服务器为客户端提供读写服务。它是集群工作机制的核心,事务请求唯一调度者和处理者,保证集群事务请求处理的顺序性。
②学习者(learner),学习者又分为跟随者和观察者:
跟随者(follower)Follower服务器为客户端提供读服务,参与Leader选举过程,参与写操作"过半写成功"策略。处理非事务请求,转发事务请求给领导者,同时参与投票。
观察者(observer)Observer服务器为客户端提供读服务,不参与Leader选举过程,不参与写操作"过半写成功"策略。用于在不影响写性能的前提下提升集群的读性能。该服务不参与投票,可有可无的。
③客户端(client)服务请求发起方。


【二、Zookeeper选举】
上面提到的服务器角色是怎么产生的呢,就是通过选举。
我这里,以一个例子的来形象说明选举的过程:
1、咱们现在有10台服务器,刚刚上线的服务器没有任何数据,崭新的。咱们给它编个号:1,2,3,4,5,6,7,8,9,10,咱们呢把这10个服务器逐个都开机了哈。
2、在服务器启动的时候啊,选举就开始了。1号服务器启动,先给自己投票,然后把自己的信息发出去,让别的也投。但是呢其他服务器还没有启动啊,于是1号服务器就收不到反馈。心情很是失落,像笔者那年一样,此时1号服务器就开始处于选举状态了(Looking左顾右盼的,焦急等待)。
3、接着2号服务器终于启动了,它也给自己投票,但是2号服务器收到了1号服务器的反馈。2号服务器暂时胜出,票数还没有大于半数,2号也得处于选举状态。
4、同理哈,3号启动,4号启动,5号启动,一直到6号。6号就不同了,它给自己先投了一票,然后收到了1,2,3,4,5的投票,6票超过半数,他就是领导者。同时也先入为主了,后续7,8,9,10号无论票数怎样,都不管了。

【三、Zookeeper各种角色作用】
1、Zookeeper中的请求
事务请求:
改变服务器状态的请求。
非事务请求:
仅仅读取数据,不修改数据的请求
2、领导者Leader
领导者会根据不同的请求,进行不同的处理。
3、跟随者Follower
①向领导者发送请求;
②接收领导者的消息并处理;
③接收客户端请求,如果是写入则需要发送给领导者进行半数投票;
④返回请求结果给客户端。
4、观察者Observer
除了不参与Leader选举和Proposal投票外,与Follower的作用相同。
【四、Zookeeper中的Zab协议】
①客户端所有的写入请求,都要转发给服务中唯一的领导者Leader,然后领导者Leader根据请求发起一个Proposal请求;
②其他的跟随服务,对该Proposal请求进行投票,看自己是否支持这个请求;
③领导者Leader对投票进行收集,票数过半时,领导者Leader会向所有的服务发送一个通知。
④客户端所连接的那个服务器收到消息,执行操作并作出对客户端的回应。

【五、Zookeeper节点】
Zookeeper有四种常用节点:
①持久:PERSISTENT,【持久化节点】;
②PERSISTENT_SEQUENTIAL,顺序自动编号【持久化节点】,这种节点会根据当前已存在的节点数自动加 1
③EPHEMERAL,【临时节点】, 客户端session超时这类节点就会被自动删除
④EPHEMERAL_SEQUENTIAL,【临时节点】临时自动编号节点。
然后这四种节点还可以分呢!
按照持久化
持久:PERSISTENT、PERSISTENT_SEQUENTIAL
临时:EPHEMERAL、EPHEMERAL_SEQUENTIAL
还可以按照类型,分呢!
目录节点:PERSISTENT、EPHEMERAL
编号目录节点:PERSISTENT_SEQUENTIAL、EPHEMERAL_SEQUENTIAL

看完上述内容,你们对Zookeeper有进一步的了解吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注行业资讯频道,感谢各位的阅读。

服务 服务器 节点 领导者 客户 选举 客户端 投票 事务 角色 处理 分布式 不同 作用 就是 性能 数据 状态 票数 观察者 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海卓越科技互联网 金融科技创新监管互联网金融 互联网的科技创新 互联网与未来科技 壕鑫互联网络科技 奔汉互联网科技 互联网 视角下的科技创新 广州善班互联网科技 互联网科技实习生岗位职责 互联网公司科技股 坤平互联网科技 互联网新科技动漫ppt素材 四川慕妮娅互联网科技有限公司 互联网数据科技专业 山东有哪些互联网科技公司 求路客互联网科技电话 数字互联网科技有限公司 互联网科技对化妆品行业 杭州科技互联网公司有哪些 每日互联网科技新闻 互联网科技公司经营范围 北京路客互联网科技有限公司 科技赋能下的互联网金融 互联网 视角下的科技创新 昭通云南众福互联网科技有限公司 想开互联网科技公司怎么样 互联网科技创新的路径 佛山市拉法互联网科技有限公司 四川慕妮娅互联网科技有限公司 互联网时代科技型公司的机会
0