50个kafka常见面试题及答案,撸完阿里P7见

11. 消费者提交消费位移时提交的是当前消费到的最新消息的offset还是offset+1?

offset+1

12. 有哪些情形会造成重复消费?

消费者消费后没有commit offset(程序崩溃/强行kill/消费耗时/自动提交偏移情况下unscrible)

13. 那些情景下会造成消息漏消费?

消费者没有处理完消息 提交offset(自动提交偏移 未处理情况下程序异常结束)

14. KafkaConsumer是非线程安全的,那么怎么样实现多线程消费?

1.在每个线程中新建一个KafkaConsumer

2.单线程创建KafkaConsumer,多个处理线程处理消息(难点在于是否要考虑消息顺序性,offset的提交方式)

15. 简述消费者与消费组之间的关系

消费者从属与消费组,消费偏移以消费组为单位。每个消费组可以独立消费主题的所有数据,同一消费组内消费者共同消费主题数据,每个分区只能被同一消费组内一个消费者消费。

16. 当你使用kafka-topics.sh创建(删除)了一个topic之后,Kafka背后会执行什么逻辑?

创建:在zk上/brokers/topics/下节点 kafkabroker会监听节点变化创建主题

删除:调用脚本删除topic会在zk上将topic设置待删除标志,kafka后台有定时的线程会扫描所有需要删除的topic进行删除

17. topic的分区数可不可以增加?如果可以怎么增加?如果不可以,那又是为什么&#x

  • 23
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,以下是一些资深Kafka专家可能会被问到的面试问题及其答案: 1. 什么是Kafka的消息模型? Kafka的消息模型是基于发布订阅模式,生产者(Producer)将消息发布到Topic中,消费者(Consumer)从Topic中订阅并消费消息。 2. Kafka的消息持久化机制是什么? Kafka的消息持久化机制是将消息存储在磁盘上,同时也支持将消息保存在内存中以提高读写性能。 3. Kafka的数据分区机制是什么? Kafka的数据分区机制是将Topic中的消息分成多个分区(Partition),每个分区可以被单独管理和复制到多个Broker中。 4. Kafka的消息生命周期是什么? Kafka的消息生命周期包括消息的生产、存储、分发和消费,同时还包括消息的删除和过期等操作。 5. Kafka的高可用性如何实现? Kafka的高可用性是通过数据的副本机制来实现的,每个Partition都有多个副本(Replica),其中一个副本被选为Leader,其他副本作为Follower。当Leader失效时,Follower能够自动选举一个新的Leader来继续服务。 6. Kafka的性能瓶颈是什么? Kafka的性能瓶颈通常是由于网络带宽、磁盘读写速度、CPU和内存等因素导致的。为了提高性能,可以使用多个分区和多个Broker来扩展集群。 7. Kafka的安全性如何实现? Kafka的安全性包括身份认证和数据加密两个方面。身份认证可以使用SSL/TLS证书、Kerberos或OAuth等机制来实现,数据加密则可以使用SSL/TLS或SASL/PLAIN等机制来加密。 以上是一些可能会被问到的资深Kafka专家面试题及其答案,希望能对你有所帮助。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值