kafka 面试

1 kafka 可以脱离 zookeeper 单独使用吗?为什么?

Kafka 从版本 0.10.1.0 开始支持在某些场景下脱离对 Zookeeper 的依赖,引入了基于 Raft 协议的 Kafka Controller。这意味着在一些简单的使用情况下,Kafka 可以脱离 Zookeeper 单独使用。但在生产环境中,建议还是保留 Zookeeper,因为它在 Kafka 集群中担任着重要的角色,包括保存集群的元数据、broker 的健康状态等。

2 kafka 有几种数据保留的策略?

基于时间的保留策略:根据消息的时间戳来决定消息的保留时间。

基于大小的保留策略:根据日志段文件的大小来决定消息的保留。

3 kafka 同时设置了 7 天和 10G 清除数据,到第五天的时候消息达到了 10G,这个时候 kafka 将如何处理?

当设置了同时基于时间和大小的数据清除策略时,如果在第五天时消息达到了 10G,Kafka 将按照优先级较高的清除策略来进行数据清除,即先清除时间超过 7 天的消息,直到满足数据大小不超过 10G的条件。

4 什么情况会导致 kafka 运行变慢?

硬件性能不足:包括磁盘、内存、网络等硬件资源限制。

配置不当:例如未能合理配置分区数量、副本数量等参数。

网络故障:Kafka 集群中的网络通信故障会导致性能下降。

消费者处理不及时:如果消费者处理速度跟不上消息产生速度,会导致积压,进而影响 Kafka 性能。

5 使用 kafka 集群需要注意什么?

合理的分区规划和副本分配,避免出现热点分区。

监控 Kafka 集群的健康状态,包括各个 broker 的负载情况、消息堆积情况等。

注意数据的备份和容灾规划,确保数据不会因为故障丢失。

合理配置数据保留策略,避免数据无限增长导致存储问题。

相关推荐
写写闲篇儿8 分钟前
微软面试之白板做题
面试·职场和发展
敲敲了个代码1 小时前
隐式类型转换:哈基米 == 猫 ? true :false
开发语言·前端·javascript·学习·面试·web
liang_jy2 小时前
Android LaunchMode
android·面试
LYFlied2 小时前
【每日算法】LeetCode 17. 电话号码的字母组合
前端·算法·leetcode·面试·职场和发展
Mr.朱鹏4 小时前
SQL深度分页问题案例实战
java·数据库·spring boot·sql·spring·spring cloud·kafka
yaoh.wang4 小时前
力扣(LeetCode) 1: 两数之和 - 解法思路
python·程序人生·算法·leetcode·面试·跳槽·哈希算法
脸大是真的好~5 小时前
分布式锁-基于redis实现分布式锁(不推荐)- 改进利用LUA脚本(不推荐)前面都是原理 - Redisson分布式锁
redis·分布式·lua
winfield8215 小时前
关于工程实践的面试问题
微服务·面试
yaoh.wang5 小时前
力扣(LeetCode) 27: 移除元素 - 解法思路
python·程序人生·算法·leetcode·面试·职场和发展·双指针
liuniansilence6 小时前
🚀 高并发场景下的救星:BullMQ如何实现智能流量削峰填谷
前端·分布式·消息队列