Kafka相关面试题

kafka相关面试题及答案 1、kafka中的ISR、AR代表什么? ISR:与leader保持同步的follower集合。 AR:代表分区里边的所有副本。 2、kafka中的hw、Leo分别代表什么? Leo:每个副本最后一条消息的offset Hw:一个分区中所有副本中最小的offset 3、kafka中是怎样体现消息的顺序性的? 每个分区的每条消息都会有一个offset,只能保证区内有序。 4.kafka中的分区器、序列化器、拦截器什么?它们之间的处理顺序是什么? 拦截器→序列化→分区器 5、Kafka生产者客户端的整体结构是. 阅读详情

1、kafka的消费者是pull(拉)还是push(推)模式,这种模式有什么好处?

       producer从broker拉取消息,consumer从broker拉取消息

优点:pull模式消费者自主决定是否批量从broker拉取数据,而push模式在无法知道消费者消费能力情况下,不易控制推送速度,太快可能造成消费者奔溃,太慢又可能造成浪费。

缺点:如果 broker 没有可供消费的消息,将导致 consumer 不断在循环中轮询,直到新消息到到达。为了避免这点,Kafka 有个参数可以让 consumer阻塞知道新消息到达(当然也可以阻塞知道消息的数量达到某个特定的量这样就可以批量发送)。
2、kafka中ack的三种机制

request.required.acks 有三个值 0 1 -1(all),具体如下:
0:生产者不会等待 broker 的 ack,这个延迟最低但是存储的保证最弱当 server 挂掉的时候就会丢数据。
1:服务端会等待 ack 值 leader 副本确认接收到消息后发送 ack 但是如果 leader挂掉后他不确保是否复制完成新 leader 也会导致数据丢失。
-1(all):服务端会等所有的 follower 的副本受到数据后才会受到 leader 发出的ack,这样数据不会丢失。
 3、kafka集群情况下怎么保证消息的顺序消费

Kafka 中发送 1 条消息的时候,可以指定(topic, partition, key) 3 个参数,partiton 和 key 是可选的。

Kafka 分布式的单位是 partition,同一个 partition 用一个 write ahead log 组织,所以可以保证FIFO 的顺序。不同 partition 之间不能保证顺序。因此你可以指定 partition,将相应的消息发往同 1个 partition,并且在消费端,Kafka 保证1 个 partition 只能被1 个 consumer 消费,就可以实现这些消息的顺序消费。

另外,你也可以指定 key(比如 order id),具有同 1 个 key 的所有消息,会发往同 1 个partition,那这样也实现了消息的顺序消息。
4、kafka如何不重复消费数据

这个问题换种问法,就是kafka如何保证消息的幂等性。对于消息队列来说,出现重复消息的概率还是挺大的,不能完全依赖消息队列,而是应该在业务层进行数据的一致性幂等校验。

比如你处理的数据要写库(mysql,redis等),你先根据主键查一下,如果这数据都有了,你就别插入了,进行一些消息登记或者update等其他操作。另外,数据库层面也可以设置唯一健,确保数据不要重复插入等 。一般这里要求生产者在发送消息的时候,携带全局的唯一id。
 

kafka ack确认机制 要注意,在acks=all模式下,如果Kafka集群的副本因某种原因无法满足确认要求,写入操作可能会失败,因此需要在选择确认级别时进行权衡。在这个级别下,生产者发送消息后会等待所有分区副本都确认消息已成功写入到它们的本地日志,然后才认为消息已成功发送。在这个级别下,生产者发送消息后会等待分区的领导者(leader)确认消息已成功写入到其本地日志。生产者发送消息后不会等待任何确认,直接将消息添加到分区的副本中,并认为消息已成功发送。在这种模式下,如果发生故障或错误,生产者将不会知道,也不会重试发送消息。 阅读详情

相关推荐

手把手教你用Matlab为PMSM电流环设计2P2Z补偿器(附与PI对比)

本文详细介绍了如何使用Matlab的controlSystemDesigner工具为永磁同步电机(PMSM)电流环设计2P2Z补偿器,并与传统PI控制器进行性能对比。通过频域分析和时域仿真,展示了2P2Z补偿器在提升带宽、减少超调等方面的优势,为高性能伺服驱动和精密运动控制提供了实用解决方案。

weixin_42551227的博客 376

Kafka之ack确认机制

kafka之ack确认机制

bboy66的博客 8765

schrodinger 薛定谔

链接: https://pan.baidu.com/s/1Duh4GsoytIklvZp7TdHpWg 密码: wmr1 Linux系统版 进入 Schrodinger_Suites_2021-2_Linux-x86_64 sudo ./INSTALL 中间按默认的来即可,也可以自己调整安装目录。安装目录一定要记住。 安装完,把patcher 拷贝到安装目录 sudo ./patcher 点击Patch即可。 启动程序,进入安装目录 ./maestro ...

周迪新的博客 1万+

Spring Boot 整合kafka:生产者ack机制和消费者AckMode消费模式、手动提交ACK

kafka生产者ack机制和消费者AckMode消费模式、手动提交ACK

qq_36551991的博客 1万+

【SLAM】探索explore_lite在移动机器人自主建图中的高效边界检测策略

本文深入解析了explore_lite在移动机器人自主建图中的应用,重点探讨了其高效的贪婪边界检测策略。该工具包专为资源受限平台设计,通过直接利用SLAM生成的地图信息,以极低的计算开销实现快速、稳定的未知区域探索,并与move_base导航框架无缝协作,是轻量级机器人自主探索的优选方案。

purple的博客 1066

Python爬虫实战:爬取携程旅游平台数据,我拆解了动态反爬+Cookie续命(附完整可运行代码)

反爬类型表现形式应对思路sign参数返回403/空数据逆向JS还原加密逻辑Cookie时效登录后1小时Cookie失效定时刷新Cookie/保存登录态行为检测爬取过快触发验证码模拟真人延时/随机点击IP封禁单IP爬取超50条数据被封付费代理池/降低请求频率爬取携程旅游平台数据的核心,不是“简单的HTTP请求”,而是“理解平台的反爬逻辑并合规适配”——从sign参数破解到Cookie维护,再到行为模拟,每一步都是对HTTP协议、前端加密、用户行为的深度理解。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 1713

Kafka的ACK原理

SpringBoot yml 配置 原文:https://blog.youkuaiyun.com/sheep8521/article/details/89511219 spring: kafka: consumer: group-id: ${spring.application.name} enable-auto-commit: false auto-offset-res...

雪落南城的博客 9975

Python爬虫实战:绕过Cloudflare反爬的最新技术与完整代码详解

在互联网数据采集领域,越来越多的网站开始部署CDN和安全防护服务,其中 Cloudflare 是最为广泛使用的防护方案之一。它不仅为网站提供DDoS防护,还能通过JS挑战、验证码和行为分析来识别并拦截爬虫。这给爬虫工程师带来了极大挑战——如何在不违反网站服务条款的情况下,实现有效的数据采集?本文将分享Python领域绕过Cloudflare反爬的最新技术方法,结合最新流行库与自动化浏览器,帮助你攻克这一难题。绕过Cloudflare反爬不是一蹴而就,需结合多技术、多策略,持续迭代。

2201_76125261的博客 2628

kafka - Consumer 手动acks应答

yaml配置 # 是否自动消费(true=自动应答) enable-auto-commit: false listener: ## 手动提交ack offset模式 ack-mode: manual # kafka spring: kafka: # kafka服务器地址(可以多个) bootstrap-servers: 192.168.2.190:9092 # 配置消费者 consumer: # 指定一个默认的消费者组名 group

祁_z 3282

Android AVB 分析(十六)5 个例子彻底理解 FEC(Reed-Solomon) 的工作原理

关于 FEC 是如何工作的,一直是我 Android OTA 讨论群中的未解话题,大家基本上都不清楚 Android 上面的 FEC 是如何工作的,为什么在 OTA 升级的最后阶段,FEC 的编码计算会消耗大量的 IO 资源,并持续很长时间。接下来的几篇,我会从一个程序员的角度,演示基于里德所罗门编码的 FEC 到底是如何工作的。

洛奇看世界 667

Android 13.0 SystemUI下拉状态栏背景增加高斯模糊背景

在13.0的产品开发中,发现现在很多产品都是高斯模糊背景的,这种高斯模糊背景看起来效果很不错,产品开发需要SystemUI下拉状态栏背景也是高斯模糊背景,所以就要来实现下拉状态栏高斯模糊背景

安卓兼职framework和app工程师的博客 2670

Kafka相关面试题及答案

Kafka相关面试题及答案 Kafka中的ISR、AR又代表什么? ISR:与leader保持同步的follower集合 AR:分区的所有副本 Kafka中的HW、LEO等分别代表什么? LEO:没个副本的最后条消息的offset HW:一个分区中所有副本最小的offset Kafka中是怎么体现消息顺序性的? 每个分区内,每条消息都有一个offset,故只能保证分区内有序。 Kafka中的分区器、序列化器、拦截器是否了解?它们之间的处理顺序是什么? 拦截器 -> 序列化器 -> 分区器 Ka

GC 4653

AIO-1126-JD4(RV1126)蓝牙通讯(BLE)

AIO-1126-JD4采用了正基科技推出的一款集成WiFi、蓝牙功能的模组AP6236,支持高速(HS)功能的蓝牙 4.0,集成了 1.5 类功率放大器(PA),并支持低功耗蓝牙(BLE)。提到正基就不得不提下博通。博通和正基是芯片技术与模块制造方面的合作关系,正基科技是中国台湾的公司,在无线通信模块领域有一定的市场份额,博通则是全球领先的有线和无线通信半导体公司。正基把包含博通关键IP的核心芯片和自家的射频部分等封装在一起,即SIP(System In Package)。

w1820020635的博客 1121

kafka相关面试题总结

讲讲 kafka 维护消费状态跟踪的方法 大部分消息系统在 broker 端的维护消息被消费的记录:一个消息被分发到 consumer 后 broker 就马上进行标记或者等待 customer 的通知后进行标记。这 样也可以在消息在消费后立马就删除以减少空间占用。 但是这样会不会有什么问题呢?如果一条消息发送出去之后就立即被标记为消费 过的,一旦 consumer 处理消息时失败了(比如程序崩溃)消息就丢失了。为了 解决这个问题,很多消息系统提供了另外一个个功能:当消息被发送出去之后仅 仅被标记为已发送状

超越无限_ 1052

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

kafka相关面试题

消息中间件是基于队列与消息传递技术,在网络环境中为应用系统提供同步或异步、可靠的消息传输的支撑性软件系统。消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,它可以在分布式环境下扩展进程间的通信。

Java领域优秀创作者 1350

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

关于Kafka相关的面试题

1.请描述Kafka相关的概念和特点? 概念: 主题:就是消息的分类,生产者将消息发送到特定主题,消费者订阅该主题或者主题的分区来进行消费。 消息:就是数据,一个固定长度的消息头和一个可变长度的消息体组成。 分区和副本:一个主题可以分成多个分区,每个分区由一系列有序、不可变的消息组成,是一个有序队列。每个分区在物理上对应一个文件夹,分区的命名规则为主题名称后接“-”连接符,之后再接分区编号,分区...

tom_DT的博客 420

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

Kafka相关面试题详解

文章目录面试题列表1.突发宕机,Kafka写入的数据如何保证不丢失?Kafka 分布式存储架构Kafka 高可用架构Kafka 写入数据丢失问题Kafka 的 ISR 机制是什么?Kafka 写入的数据如何保证不丢失?总结2.Kafka如何实现每秒上百万的超高并发写入?页缓存技术 + 磁盘顺序写零拷贝技术总结3.Kafka中的ISR(InSyncRepli)、OSR(OutSyncRepli)、AR(AllRepli)等分别代表什么?4. Kafka中的HW、LEO、LSO、LW等分别代表什么?5. Kaf

陈小哥cw 2323

面试题篇-13-Kafka相关面试题

消息队列Message Queue,简称MQ。是一种应用间的通信方式,主要由三个部分组成。生产者:Producer消息的产生者与调用端主要负责消息所承载的业务信息的实例化是一个队列的发起方代理:Broker主要的处理单元负责消息的存储、投递、及各种队列附加功能的实现是消息队列最核心的组成部分消费者:Consumer一个消息队列的终端也是消息的调用端,具体是根据消息承载的信息,处理各种业务逻辑。异步处理主要应用于对实时性要求不严格的场景,

Alan0517 3559

kafka相关的面试题

1.Kafka 的设计时什么样的呢? Kafka 将消息以 topic 为单位进行归纳 将向 Kafka topic 发布消息的程序成为 producers. 将预订 topics 并消费消息的程序成为 consumer. Kafka 以集群的方式运行,可以由一个或多个服务组成,每个服务叫做一个 broker. producers 通过网络将消息发送到 Kafka 集群,集群向消费者提供消息 2.数据传输的事物定义有哪三种? 数据传输的事务定义通常有以下三种级别: (1)最多一次: 消息不会被重复发送,最多

weixin_55159719的博客 149

Kafka 相关面试题

Kafka 相关面试题

qq_45818776的博客 208

KafKa相关面试题(自行总结)

努力学习都是为了自己的名字有一个好的归宿。加油! “士由百折不挠之真心,方有万变无穷之妙用” 为本次kafka专栏做一个强化记忆专栏,都是自己看完以后理解,用尽量最少的语言对问题进行解答,第一次发表文章,难免有考虑不周的地方,还请见谅。 kafka的基本架构 基础概念扫盲 Producer 消息生产者,是消息的产生源头,负责生成消息并发送给Kafka Consumer 消息消费者,是消息的使用方,负责消费Kafka服务器上的消息 Topic 主题,由用户自定义,并配置在Kafka服务器,.

zz06251998的博客 779
上一篇: java面试-zookeeper
下一篇: redis相关面试题
曲终--人散
博客等级 码龄14年 23粉丝 51原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值