全部学科
Python全栈
python
NodeJS全栈
nodejs
📝 1 篇文章 11 道配套习题

集群架构与领导者选举专题

专题说明

本专题深入讲解ZooKeeper集群架构和Leader选举机制,包括选举算法、配置参数、角色职责、Observer应用、动态扩缩容等核心知识。

学习目标

  1. 深入理解FastLeaderElection选举算法
  2. 掌握选举配置参数优化
  3. 理解Follower角色行为和职责
  4. 掌握Observer节点应用场景
  5. 掌握集群动态扩缩容方法

学习内容

  • FastLeaderElection算法、投票规则、选举流程
  • initLimit、syncLimit、electionAlg参数配置
  • Follower读请求处理、写请求转发、投票行为
  • Observer配置、特点、跨地域部署
  • 扩容缩容流程、配置同步

学习建议

  • 重点理解ZXID最大者优先选举规则
  • 实践Observer配置和应用
  • 理解Observer不参与投票的优势
  • 掌握扩缩容操作步骤

📝 配套习题(11 题)

💡 参考答案在文末
单选题
1

ZooKeeper默认使用的Leader选举算法是什么?

A

BasicLeaderElection

B

FastLeaderElection

C

LeaderElection

D

AuthLeaderElection

2

ZooKeeper选举Leader时优先选择什么条件的节点?

A

myid最小的节点

B

ZXID最大的节点(数据最新)

C

网络延迟最低的节点

D

存储空间最大的节点

3

ZooKeeper配置参数initLimit的作用是什么?

A

限制客户端连接数

B

Follower初始连接Leader的超时时间(tickTime倍数)

C

限制节点数据大小

D

Leader选举的超时时间

4

Follower节点收到客户端的写请求时如何处理?

A

直接处理并写入本地

B

转发给Leader处理

C

拒绝写请求

D

自己变成Leader处理

5

Observer节点与Follower节点的主要区别是什么?

A

Observer可以处理写请求

B

Observer不参与事务投票和Leader选举

C

Observer存储更少的数据

D

Observer不需要与Leader通信

6

ZooKeeper集群动态添加节点需要使用什么机制?

A

修改所有节点的zoo.cfg并重启

B

使用reconfig命令动态更新集群配置

C

只重启新加入的节点

D

先停止整个集群再添加节点

多选题
7

ZooKeeper Leader选举投票信息包含哪些内容?

A

服务器ID(myid)

B

ZXID(事务ID)

C

服务器的网络地址

D

选举纪元(logicalclock)

8

ZooKeeper集群中Follower节点的主要职责有哪些?

A

处理客户端的读请求

B

将写请求转发给Leader

C

参与Leader选举投票

D

参与事务提案的投票确认

9

以下哪些场景适合使用Observer节点?

A

扩展集群读能力而不增加写延迟

B

跨数据中心部署,减少网络延迟影响

C

参与Leader选举投票

D

提高集群的投票效率

10

ZooKeeper动态扩缩容时需要注意什么?

A

需要在配置中启用reconfigEnabled=true

B

新节点的myid不能与现有节点冲突

C

添加节点时集群仍需满足过半存活

D

动态配置会自动同步到所有节点

填空题
11

ZooKeeper配置参数____________表示____________,单位是____________的倍数。

参考答案
1.B 2.B 3.B 4.B 5.B 6.B 7.A;B;D 8.A;B;C;D 9.A;B 10.A;B;C;D 11.syncLimit;Follower与Leader之间请求响应的超时时间;tickTime
想在手机上练习这套专题?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码
← 上一个专题 集群基础认知专题
下一个专题 → 集群监控与运维专题
扫码体验小程序
加载中
想在手机上刷题学习?
使用微信卷王开发者小程序,打开首页顶部扫码功能识别二维码