面试里问 Kafka,通常不是只想听你解释 Topic 和 Partition,而是想判断你是否真的理解消息系统的性能、高可用和使用边界。准备时先抓住几条主线,比零散背题更有效。
先讲 Kafka 为什么能扛高吞吐
顺序写磁盘、批量发送、页缓存和零拷贝,是 Kafka 高性能最常见的解释路径。回答时不要只说名词,最好顺手说明这些机制分别在写入、传输和读取环节起什么作用。
再讲分区和副本分别解决什么问题
分区主要服务于并行扩展和吞吐提升,副本主要服务于高可用。把这两个概念拆开讲清楚,面试官更容易判断你是否真的理解 Kafka 的基本设计。
消费语义和重复消费要能说明白
至少要能讲清 at most once、at least once 和 exactly once 这些语义差别,以及真实业务里为什么经常还需要靠幂等来兜底。
最后补上适用场景和边界
Kafka 很适合日志采集、异步解耦和数据管道,但如果业务更看重复杂延时消息或细粒度事务能力,选型时就不能只盯着吞吐量。
结论
准备 Kafka 面试时,先抓性能原理、分区副本、消费语义和使用边界这四条主线,整体回答会稳很多。
正文完




