kafka面经汇总

感谢那些分享面经的同学,大家结合自己的业务+八股的方式去回答感觉会更好。

tips:如果大家对自己的项目业务还不是很熟悉,可以用Trae或者其他的ai IDEA帮你分析整个项目的业务

一、核心原理与基础概念

  1. 请简述 Kafka 的核心原理(架构、数据流转过程)。
  2. 讲一下你对消息队列的理解(核心价值、适用场景)。
  3. Kafka 的核心特性有哪些?
  4. Kafka 是推(Push)模式还是拉(Pull)模式?支持批量处理还是单条处理?
  5. 什么是零拷贝?Kafka 的零拷贝是怎么实现的(底层调用的函数 / 机制)?
  6. 有了解过 Kafka 分区(Partition)的概念吗?其核心作用是什么?
  7. 正常情况下,一个 Topic 下是一个分区还是多个分区?多个分区的好处是什么?
  8. Kafka 的 Leader 和 Follower 分别是干什么用的?
  9. 请介绍 Kafka 的 ISR 机制(In-Sync Replicas,同步副本集)。
  10. Kafka 用什么维护消费偏移量(Offset)?最新版本还依赖 ZooKeeper 吗?原因是什么?
  11. 除了异步通信和削峰填谷,使用 MQ 还有哪些考量?
  12. 什么时候会用到 Kafka?其核心应用场景是什么?

二、高可用与可靠性保障

  1. Kafka 如何保证高可用性?(结合集群、ISR、Leader 选举等)
  2. Kafka 如何保证消息不丢失?可能丢失消息的场景有哪些?如何解决?
  3. Kafka 如何保证消息的顺序性?(整体顺序、分区内顺序)
  4. Kafka 如何防止脑裂问题?
  5. Kafka 支持事务吗?其事务机制是怎样的?
  6. 什么是消息的重复消费?Kafka 中如何避免重复消费?
  7. Kafka 的 ACK 有哪几种模式?各自的作用是什么?
  8. 一个 Kafka Topic 被 5 个消费组同时消费(每个 Group 写不同系统),中间某个 Group 偶发失败,但不能重放整条消息(其他组已成功),如何保证该组失败消息的精准重试?同时如何保证幂等性?

三、分区与 Topic 相关

  1. Kafka 的分区策略有哪些?默认分区、粘性分区、自定义分区分别是什么?
  2. Kafka 如何将消息发送到指定的 Partition 中?(底层逻辑、路由规则)

四、生产者与消费者相关

  1. Kafka 消费者的消费策略有哪些?(如 Range、Round-Robin 等)
  2. 什么是 Kafka 的 Rebalance 机制?
  3. 哪些情况下会触发 Kafka 的 Rebalance?
  4. Rebalance 持续时间较长会有什么影响?如何解决?
  5. 如何降低 Consumer 重启次数?
  6. Kafka 出现消息消费 Lag(消费延迟、消息堆积)时,如何排查问题?怎么处理?
  7. 除了限流和丢弃消息,还有哪些方式可以提高消费者的吞吐量,解决消息积压?
  8. 单分区单消费者实例场景下,如何提高 Kafka 的吞吐量?
  9. Kafka、RabbitMQ 如果要监听多个 Topic,需要写多个监听器吗?

五、选举机制

  1. Kafka 的 Leader 选举策略是什么?
  2. Kafka 的选举机制具体是怎么实现的?(结合 ISR、Controller 等)

六、性能优化

  1. 为什么 Kafka 速度快?(从存储、IO、网络等角度分析)

七、部署与运维

  1. 如果 Kafka 宕机,如何处理?(分 Broker 宕机、Consumer 宕机等场景)

八、特殊功能实现

  1. Kafka 的延迟消息队列是如何实现的?
  2. 如何用 Kafka 解耦文件上传与处理流程?

九、MQ 对比与选型

  1. Kafka 和 RabbitMQ 有什么区别?
  2. Kafka、RabbitMQ、RocketMQ 三者的区别与适用场景?
  3. 为什么选择 Kafka 实现服务通信?选型时为什么不选 RabbitMQ 或 RocketMQ?
  4. 为什么使用 Kafka 做异步通信?有考虑过其他 MQ 吗?

十、项目实战场景

  1. Kafka 在工作场景中主要用于解决什么问题?
  2. Kafka 在项目中的具体使用场景有哪些?(举例说明)
#牛客在线求职答疑中心##机械制造笔面经##业务面应该做哪些准备##大厂面试问八股多还是项目多?##面试问题记录#
全部评论

相关推荐

点赞 评论 收藏
分享
评论
3
4
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务