锐单电子商城 , 一站式电子元器件采购平台!
  • 电话:400-990-0325

Zookeeper常见面试题(包含答案)

时间:2023-08-06 16:37:00 164zk10连接器

Zookeeper面试题及答案,每一道都是精心挑选的高频面试题,帮助大家找到满意的工作!

下载链接所有的面试问题和答案PDF

1.ZooKeeper 是什么?

ZooKeeper 分布式应用程序协调服务是开放源代码的分布式服务 Google 的 Chubby 开源的实现是集群管理者,根据节点提交的反馈,监控集群中各节点的状态,进行下一步的合理操作。最后,为用户提供简单易用的接口和高效稳定的功能系统。

客户端的读取请求可以由集群中的任何机器处理。如果读取请求在节点上注册了监听器,则该监听器也由连接 zookeeper 处理机器。这些请求将同时发送给其他请求 zookeeper 机器并且达成一致后,请求才会返回成功。因此,随着 zookeeper 随着集群机的增加,阅读请求的吞吐量会增加,但写请求的吞吐量会减少。有序性是 zookeeper 一个非常重要的特点,所有的更新都是整体有序的,每个更新都有一个唯一的时间戳,这个时间戳被称为 zxid(Zookeeper Transaction Id)。与更新相比,读取请求只会有序,即读取请求的返回结果会带来这个 zookeeper 最新的 zxid。

2.Zookeeper 工作原理

Zookeeper 核心是原子广播,保证了每个机制 Server 同步。实现这一机制的协议称为协议 Zab 协 议。Zab 恢复模式(选主)和广播模式(同步)有两种模式。当服务启动或领导者崩溃时,Zab 进入恢复模式,当领导被选中时,大多数 Server 完成了和 leader 恢复模式在状态同步后结束。状态同步得到保证 leader 和 Server 具有相同的系统状态。

3.Zookeeper 负载均衡和 nginx 负载平衡差

zk 负载调节负载平衡,nginx 只能调整权重,其他需要控制的需要自己写插件;但是 nginx 的吞吐量比zk 要大得多,应该说根据业务选择哪种方式。

4.ZooKeeper 提供了什么?

1、文件系统

2、通知机制

5.Zookeeper 同步流程

选完 Leader 以后,zk 就进入状态同步过程。

1、Leader 等待 server 连接;

2、Follower 连接 leader,将最大的 zxid 发送给 leader;

3、Leader 根据 follower 的 zxid 确定同步点;

4.同步完成后通知 follower 已经成为 uptodate 状态;

5、Follower 收到 uptodate 新闻发布后,可以再次接受 client 服务的请求。

在这里插入图片描述

6.分布式通知和协调

对于系统调度:操作人员发送通知实际上是通过控制台改变节点的状态,然后 zk 将这些变化发送给注册了这个节点的 watcher 所有客户端。

实施报告:每个工作过程都在目录下创建一个临时节点。并携带工作进度数据,以监控目录子节点的变化,实时获得工作进度。

7.为什么机器里有? leader?

在分布式环境中,一些业务逻辑只需要集群中的一台机器来执行,其他机器可以共享结果,这可以大大降低重复计算,提高性能,因此需要执行 leader 选举。

8.zk 如何处理节点停机?

Zookeeper 也是集群,推荐配置不少于 3 个服务器。Zookeeper 当一个节点停机时,其他节点将继续提供服务。

如果是一个 Follower 宕机,还有 2 台湾服务器提供访问,因为 Zookeeper 数据有多个副本,数据不会丢失;

如果是一个 Leader 宕机,Zookeeper 会选举出新的 Leader。

ZK 集群的机制是,只要一半以上的节点正常,集群就能正常提供服务。 ZK 节点挂得太多,只有一半或不到一半的节点可以工作,集群失效。

所以3 个节点的 cluster 可以挂掉 1 个节点(leader 可以得到 2 票>1.5)2 个节点的 cluster 不能挂掉任何东西 1 个节点了(leader 可以得到 1 票<=1)

9.Zookeeper 文件系统

Zookeeper 提供多层次的节点命名空间(节点称为 znode)。与文件系统不同,这些节点可以设置相关的数据,而只有文件节点可以存储在文件系统中,而目录节点不能。Zookeeper 为了保证高吞吐量和低延迟,这种树状的目录结构在内存中得到了维护,这使得 Zookeeper 存储大量数据储数据上限不能用于存储大量数据 1M。

10.四种类型 znode

1、PERSISTENT-持久目录节点

客户端与 zookeeper 断开连接后,节点仍然存在

2、PERSISTENT_SEQUENTIAL-持久顺序编号目录节点

客户端与 zookeeper 断开连接后,节点仍然存在,但 Zookeeper 顺序编号节点名称

3、EPHEMERAL-临时目录节点

客户端与 zookeeper 断开连接后,节点被删除

4、EPHEMERAL_SEQUENTIAL-临时顺序编号目录节点

客户端与 zookeeper 断开连接后,节点被删除,但 Zookeeper 顺序编号节点名称

11.Zookeeper 队列管理(文件系统、通知机制)

12.Zookeeper 数据复制

13.Zookeeper 通知机制

14.Zookeeper 做了什么?

15.zk 命名服务(文件系统)

16.zk 配置管理(文件系统、通知机制)

17.Zookeeper 集群管理(文件系统、通知机制)

18.Zookeeper 分布式(文件系统、通知机制)

19.获取分布式锁的过程

20.zookeeper 是如何保证事务的顺序一致性的?

21.Zookeeper 下 Server 工作状态

22.zookeeper 如何选择主? leader 的?

23.zookeeper watch 机制

23.zookeeperwatch 机制

下载链接博主已将以上这些面试题整理成了一个面试手册,是PDF版的

锐单商城拥有海量元器件数据手册IC替代型号,打造电子元器件IC百科大全!

相关文章