1.Kafka的用途有哪些?使用场景如何?
削峰填谷,解耦
日志采集
大流量数据下发
2.Kafka中的ISR、AR又代表什么?ISR的伸缩又指什么
AR |
包含leader 在内的所有副本 |
ISR |
和leader 保持 一定损失范围内的副本 |
ISR伸缩 |
3.Kafka中的HW、LEO、LSO、LW等分别代表什么?
4.Kafka中是怎么体现消息顺序性的?
分区内有序
5.Kafka中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序是什么?
6. Kafka生产者客户端的整体结构是什么样子的?
7.Kafka生产者客户端中使用了几个线程来处理?分别是什么?
9.“消费组中的消费者个数如果超过topic的分区,那么就会有消费者消费不到数据”这句话是否正确?如果正确,那么有没有什么hack的手段?
10.消费者提交消费位移时提交的是当前消费到的最新消息的offset还是offset+1?
offset+1
11.有哪些情形会造成重复消费?
12.那些情景下会造成消息漏消费?
13.KafkaConsumer是非线程安全的,那么怎么样实现多线程消费?
14.简述消费者与消费组之间的关系
26.聊一聊你对Kafka的Log Retention的理解
27.聊一聊你对Kafka的Log Compaction的理解
28.聊一聊你对Kafka底层存储的理解(页缓存、内核层、块层、设备层)
29.聊一聊Kafka的延时操作的原理
30.聊一聊Kafka控制器的作用
31.消费再均衡的原理是什么?(提示:消费者协调器和消费组协调器)
32.Kafka中的幂等是怎么实现的
33.Kafka中的事务是怎么实现的(这题我去面试6加被问4次,照着答案念也要念十几分钟,面试官简直凑不要脸)
34.Kafka中有那些地方需要选举?这些地方的选举策略又有哪些?
35.失效副本是指什么?有那些应对措施?
36.多副本下,各个副本中的HW和LEO的演变过程
37.为什么Kafka不支持读写分离?
38.Kafka在可靠性方面做了哪些改进?(HW, LeaderEpoch)
39.Kafka中怎么实现死信队列和重试队列?
40.Kafka中的延迟队列怎么实现(这题被问的比事务那题还要多!!!听说你会Kafka,那你说说延迟队列怎么实现?)
41.Kafka消息高可靠解决方案
一、消息发送
【1】 消息发送
ack = all ,等待ISR同步完以后再返回。
【2】unclean.leader.election.enable:false ,禁止选举ISR以外的follower为leader
【3】tries > 1 ,生产者可重试
【4】min.isync.replicas > 1 : 同步副本数,没满足该值前,不提供读写服务,写操作会异常。
二、消费
【1】 消费完后 手动提交commit
【2】 broker: kafka 调用fsync() 做刷盘操作,减少刷盘间隔。避免因掉电引起的数据丢失
【3】事务消息。
引用
https://hiddenpps.blog.csdn.net/article/details/88550812