Kafka面试题

  1. 消息队列的主要作用
解耦,将生产者与消费者解耦。
数据冗余,消息队列中还会有一份数据备份。
缓冲,生产者消费者速度不匹配时,做缓冲。
  1. 消息投递模式
1. push模式
  优点:及时性好
  缺点:受限于消费能力,可能造成积压。
2. pull模式
  优点:消费者可按需获取。
  缺点:及时性差,可能会延迟。
  1. 消费语义
1. 至多消费一次:消息可能丢失,但绝不重传。
2. 至少消费一次:消息可能重传,但绝不丢失。
3. 仅被消费一次:消息只被传递一次。
  1. 消息与主题,分区间的关系
每一个消息都归属于某一个主题,kafka中以主题为单位进行归类。
每一个主题会有若干个分区,每个分区只属于一个主题,每个分区包含的消息不同而且是有序的。
  1. 消费者组与分区关系
每个分区只能被消费者组中的一个消费者消费,一个消费者可以消费多个分区。
  1. 分区的副本机制
分区的副本机制,是一主多从的关系,各副本之间的内容是一致的。
leader副本用来读写,follower副本用来备份。
一旦leader副本下线,会通过选举机制选举新的leader副本。
(按照ISR列表中选取)
不同的副本在不同的broker中。
  1. acks参数含义
acks=0:不需要等待任何返回。
acks=1:需要等待leader副本写入成功,不等待follower副本。
acks=-1:需要等待leader副本与所有follower副本写入成功。
  1. AR,ISR和OSR的含义与关系
AR:所有副本
ISR:leader副本和与leader副本保持一定同步的follower副本。
OSR:同步滞后的副本集合。
AR = ISR + OSR
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Kafka 面试及答案可以包括以下内容: 1. Kafka 是什么?它的主要特点是什么? Kafka 是一个分布式流处理平台,主要用于处理实时数据流。它的主要特点包括高吞吐量、可扩展性、持久性、容错性和可靠性。 2. Kafka 的消息传递模型是什么? Kafka 的消息传递模型是基于发布-订阅模式的,生产者将消息发布到一个或多个主(topic),而消费者则订阅这些主并接收消息。 3. Kafka 的核心组件有哪些? Kafka 的核心组件包括生产者(Producer)、消费者(Consumer)、主(Topic)、分区(Partition)和代理(Broker)。 4. Kafka 的消息是如何保证可靠性传递的? Kafka 通过将消息持久化到磁盘上的日志文件来保证可靠性传递。生产者将消息写入日志文件后即可返回成功,而消费者可以根据自己的需求灵活地消费消息。 5. Kafka 的数据复制机制是怎样的? Kafka 使用副本机制来实现数据的冗余备份。每个分区都有一个主副本和多个副本,主副本负责处理读写请求,而其他副本则用于备份和容错。 6. Kafka 的消息顺序性如何保证? Kafka 保证每个分区内的消息顺序性,即同一个分区内的消息按照发送的顺序进行存储和消费。不同分区之间的消息顺序性不能保证。 7. Kafka 的消费者如何处理消息的偏移量? Kafka 的消费者可以手动管理消息的偏移量,也可以使用消费者组(Consumer Group)来自动管理偏移量。消费者组可以协同工作,确保每个消息只被消费一次。 这些是一些常见的 Kafka 面试及答案,希望对你有帮助!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值