《前后端面试题》专栏集合了前后端各个知识模块的面试题,包括html,javascript,css,vue,react,java,Openlayers,leaflet,cesium,mapboxGL,threejs,nodejs,mangoDB,SQL,Linux… 。

文章目录
- 一、本文面试题目录
-
-
- 11. 什么是Kafka的分区(Partition)?为什么要进行分区?
- 12. 分区的数量对Kafka的性能有什么影响?如何确定分区数量?
- 13. Kafka的分区副本(Replica)有什么作用?
- 14. 什么是首领副本(Leader Replica)和追随者副本(Follower Replica)?它们的职责分别是什么?
- 15. 简述Kafka的副本同步机制(ISR机制)。
- 16. ISR(In-Sync Replicas)、OSR(Out-of-Sync Replicas)、AR(Assigned Replicas)的区别是什么?
- 17. 当Leader副本故障时,Kafka如何进行故障转移?
- 18. 什么是Kafka的消费者组(Consumer Group)?它的作用是什么?
- 19. 消费者组内的消费者如何分配分区?有哪些分配策略?
- 20. 消费者重平衡(Rebalance)是什么?触发重平衡的场景有哪些?
- 21. 重平衡会带来什么问题?如何避免或减轻其影响?
- 22. Kafka的消息是如何被持久化的?
-
- 二、100道Kafka 面试题目录列表
一、本文面试题目录
11. 什么是Kafka的分区(Partition)?为什么要进行分区?
Kafka的分区(Partition) 是Topic的物理分片,是Kafka实现并行处理和水平扩展的核心机制。每个Topic可以被划分为多个Partition,每个Partition是一个有序的、不可变的消息序列,消息被追加到Partition的末尾并分配唯一的偏移量(Offset)。
进行分区的主要原因:
- 提高吞吐量:多个Partition可以并行处理读写操作,大幅提升系统整体吞吐量
- 实现负载均衡:不同Partition可以分布在不同的Broker上,均衡集群负载
- 支持水平扩展:通过增加Partition数量或Broker节点扩展系统容量
- 保证局部有序性:每个Partition内部的消息是严格有序的,满足有序性需求
- 方便数据管理:可以针对不同Partition设置不同的存储和清理策略
示例:创建一个包含3个分区的Topic
# 使用kafka-topics.sh创建Topic
b
订阅专栏 解锁全文
1026

被折叠的 条评论
为什么被折叠?



