【Kafka系列】Kafka事务一般在什么场景下使用呢

面试官:听说你精通Kafka,那我就考考你吧

面试官:不用慌尽管说,错了也没关系😊。。。

以【面试官面试】的形式来分享技术,本期是《Kafka系列》,感兴趣就关注我吧❤️

面试官:生产者重试机制导致Kafka重复消息,知道怎么处理吗

噢噢,Kafka支持幂等生产者,可以开启这个模块。

它是这样的,发送消息时同时发送生产者id、消息序列号,kafka会根据这些信息避免重复消息被写入。

面试官思考中...

面试官:Kafka事务,应该知道吧

嗯嗯知道的,消息队列事务主要应用在流式应用程序中。

比如主题A的消息A过来,消费者的消费逻辑是发送消息B给主题B。

所以我们要确保消费者成功提交偏移量、新消息成功写入,这两步操作要么成功要么都不成功。

面试官思考中...

面试官:你说的这个场景,不使用事务会有什么问题吗

可能会出现重复消费的问题。

比如消费消息A,新消息被成功写入,但提交偏移量失败了 。Broker会认为该消息未被消费,此时消息A会分给其他消费者重复消费

面试官思考中...

面试官:那Kafka事务一般在什么场景下使用呢

我举个例子吧。

例如支付场景下有很多流程步骤,用户支付后,发送支付消息过来。消费者扣款后,还需要发送另一个消息去给商家转账。

这个场景下就需要事务的支持了,保证两个步骤的事务性。

面试官抓抓脑袋,继续看你的简历...

得想想考点你不懂的😰

未完待续。。。。。。

好了,今天的分享就先到这,我们下期【Kafka系列】继续。

创作不易,不妨点赞、收藏、关注支持一下,各位的支持就是我创作的最大动力❤️

相关推荐
清泓y6 小时前
UE 物理系统知识分享
面试·ue5·游戏程序
weixin_BYSJ19876 小时前
springboot3家政平台小程序--附源码00904
java·javascript·spring boot·python·django·flask·php
梦幻通灵7 小时前
Java中finally失效的几种情况【持续更新】
java·开发语言
KaifuZeng7 小时前
电源面试问题汇总一
单片机·嵌入式硬件·面试·电路
月落归舟7 小时前
SpringMVC 多种响应返回方式
java·开发语言
吃饱了得干活7 小时前
JVM垃圾回收:从新生代到ZGC,从理论到调优
java·jvm·后端
长不胖的路人甲7 小时前
二叉排序树(BST)Java 完整实现 + 删除思路详解
java·开发语言·算法
HeiSenBerg7 小时前
ARouter 原理深度剖析:从 APT 到 ASM,彻底搞懂路由框架
面试
大模型码小白7 小时前
Java 部署:Jenkins Pipeline 构建 Java 项目(自动化)
java·人工智能·python·机器学习
长不胖的路人甲7 小时前
可达性分析法(根搜索算法)完整详解
java·jvm·算法