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 的负载情况、消息堆积情况等。

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

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

相关推荐
better_liang3 小时前
每日Java面试场景题知识点之-消息队列MQ核心场景与实战
java·面试·kafka·消息队列·rabbitmq·rocketmq·mq
小江的记录本3 小时前
【JVM虚拟机】垃圾回收GC:四种引用类型:强引用、软引用、弱引用、虚引用(附《思维导图》+《面试高频考点清单》)
java·jvm·spring boot·后端·python·spring·面试
better_liang4 小时前
每日Java面试场景题知识点之-SpringBoot启动流程
java·面试·springboot·源码解析·启动流程
Raink老师4 小时前
【AI面试临阵磨枪-69】如何设计一个支持百万级工具的 Agent 系统?如何快速路由与选择工具?
人工智能·面试·职场和发展
Raink老师5 小时前
【AI面试临阵磨枪-77】音视频 + AI:实时字幕、翻译、降噪、虚拟人、多模态对话
人工智能·面试·音视频
洛水水5 小时前
Redis 分布式锁详解:实现与缺陷
数据库·redis·分布式
Raink老师8 小时前
【AI面试临阵磨枪-76】社交 AI:内容生成、审核、智能回复、多模态理解、安全治理
人工智能·安全·面试
仙俊红8 小时前
Integer\int对比,equals()\hashcode面试
java·面试·职场和发展
kyriewen9 小时前
手写虚拟DOM后,我反问面试官:key为什么不能用index?
前端·react.js·面试
长谷深风1119 小时前
Java 面试高频:反射机制与异常体系全面解析
java·开发语言·面试·exception·java 反射·java 异常·class 对象