Kafka精选面试题

1. 如何保证幂等性?

幂等性其实是消息的一致性, 生产和消费都只有一次, 所以分为生产者幂等性和消费者幂等性.

实际开发过程中, 一般只会保证消费幂等性, 所以面试时直接回答消费幂等就行
做法就是做唯一id, 在消费端做个判断,如果唯一id已存在则不做消费处理, 这个唯一id一般会借用数据库的唯一性

2. kafka为什么这么快?

一、磁盘顺序读写
二、Page Cache

Kafka利用了操作系统本身的Page Cache,就是利用操作系统自身的内存而不是JVM空间内存
三、零拷贝
四、分区分段+索引

Kafka的message是按topic分类存储的,topic中的数据又是按照一个一个的partition即分区存储到不同broker节点。每个partition对应了操作系统上的一个文件夹,partition实际上又是按照segment分段存储的。这也非常符合分布式系统分区分桶的设计思想。
五、批量读写
六、批量压缩

相关推荐
uzong5 小时前
一个好的面试官,应该让候选人感到被尊重
面试
触底反弹9 小时前
深入理解大模型采样:Temperature、Top-K、Top-P 的原理与实战
人工智能·算法·面试
沉默王二10 小时前
腾讯一面,我霸气反问:“你说你们在做Agent项目,说说 SubAgent、Plan 模式、Skill 调用这些你们都是怎么做的?”面试官一直在擦汗。。
面试·agent·ai编程
wWYy.11 小时前
分布式:数据复制
分布式
程序员Rock14 小时前
上位机开发-MODBUS面试常见问题
c语言·c++·面试·职场和发展·上位机
正儿八经的少年17 小时前
分布式 ID
分布式
PBitW18 小时前
git 中容易遗忘的点 (二) ⚡⚡⚡
前端·git·面试
浩哥学JavaAI18 小时前
2026年最新AI agent面试(07)_大模型架构基础
人工智能·面试·架构
七夜zippoe18 小时前
深入解析CANN仓库中的HCCL分布式通信库
pytorch·分布式·cann·hccl·通信库
PBitW18 小时前
git 中容易遗忘的点 (三) 🚀🚀🚀
前端·git·面试