kafka相关面试题及答案
程序员文章站
2024-03-23 21:10:28
...
1、kafka中的ISR、AR代表什么?
ISR:与leader保持同步的follower集合。
AR:代表分区里边的所有副本。
2、kafka中的hw、Leo分别代表什么?
Leo:每个副本最后一条消息的offset
Hw:一个分区中所有副本中最小的offset
3、kafka中是怎样体现消息的顺序性的?
每个分区的每条消息都会有一个offset,只能保证区内有序。
4.kafka中的分区器、序列化器、拦截器什么?它们之间的处理顺序是什么?
拦截器→序列化→分区器
5、Kafka生产者客户端的整体结构是什么样子的?使用了几个线程来处理?分别是什么?
|
***
6. “消费组中的消费者个数如果超过topic的分区,那么就会有消费者消费不到数据”这句话是否正确?
正确
7. 消费者提交消费位移时提交的是当前消费到的最新消息的offset还是offset+1?
offset+1
8、那些场景会造成消息漏消费
先提交offset,后消费,可能会造成数据重复
9、 当你使用kafka-topics.sh创建(删除)了一个topic之后,Kafka背后会执行什么逻辑?
- 会在zookeeper中的/brokers/topics节点下创建一个新的topic节点如:/brokers/topics/first
- 触发Controller的监听程序
- kafka Controller 负责topic的创建工作,并更新metadata cache
10.Kafka有内部的topic吗?如果有是什么?有什么所用?
__consumer_offsets,保存消费者offset
10、kafka的分区分配概念?
11、 简述Kafka的日志目录结构?
12、聊一聊Kafka Controller的作用?
负责管理集群broker的上下线,所有的topic的分区副本分配和leader选举等工作。
13、Kafka中有那些地方需要选举?这些地方的选举策略又有哪些?
partition leader(ISR),controller(先到先得)
14、失效副本是指什么?有那些应对措施?
不能及时与leader同步,暂时踢出ISR。等其追上leader之后再重新加入
15、Kafka的那些设计让它有如此高的性能?
分区,顺序写磁盘,0-copy