Kafka精选面试题

1. 如何保证幂等性?

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

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

2. kafka为什么这么快?

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

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

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

相关推荐
sunxunyong几秒前
spark History Server 重启失败
大数据·分布式·spark
只与明月听1 分钟前
RAG深入学习之Emabedding
前端·python·面试
野犬寒鸦23 分钟前
从零起步学习计算机操作系统:进程篇(基础知识夯实)
java·服务器·后端·学习·面试
@木尘33 分钟前
前端面试【 八股文篇】
前端·面试·职场和发展
闻哥38 分钟前
MySQL索引核心原理:B+树生成、页分裂与页合并全解析
java·jvm·b树·mysql·adb·面试·springboot
独自破碎E40 分钟前
【面试真题拆解】Redis的8种内存淘汰策略
redis·面试·职场和发展
Moment1 小时前
从爆红到被嫌弃,MCP 为什么开始失宠了
前端·后端·面试
Java水解1 小时前
RUST异步并发安全与内存管理的最佳实践
java·后端·面试
阿Y加油吧2 小时前
一篇文章速通kafka——day01
kafka
卡梅德生物科技3 小时前
卡梅德生物科普:CD140a(PDGFRα)靶点深度解析:机制、药物研发与未来趋势
大数据·人工智能·面试·职场和发展·学习方法