惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

aimingoo的专栏
aimingoo的专栏
博客园 - 三生石上(FineUI控件)
GbyAI
GbyAI
大猫的无限游戏
大猫的无限游戏
M
MIT News - Artificial intelligence
Microsoft Azure Blog
Microsoft Azure Blog
月光博客
月光博客
Engineering at Meta
Engineering at Meta
I
InfoQ
T
Tailwind CSS Blog
N
Netflix TechBlog - Medium
S
SegmentFault 最新的问题
H
Help Net Security
博客园 - 【当耐特】
WordPress大学
WordPress大学
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
美团技术团队
博客园 - 叶小钗
T
The Blog of Author Tim Ferriss
腾讯CDC
雷峰网
雷峰网
Martin Fowler
Martin Fowler
The GitHub Blog
The GitHub Blog
D
Docker

Kafka

请问一下,多节点消费 kafka 如何做到串行消费 kafka king 陆续也快有 100 个 star 了,虽然很少,但是也是对我的认可,感谢大家 求助一个 zookeeper 配置 acl, kafka 是否需要做相关修改的问题 2023 年基于 Kafka 做重试队列的最佳实践? kakfa 生产者的 ack=all 的参数会受到 broker 的最小同步副本参数的影响吗 kafka 的 producer 和 broker 的关系是什么? kafka 性能问题: kafka 传递海量小数据的时候,需要合并数据发送吗 有无 kafka 八股文或者书籍推荐 有什么好用的 kafka 桌面客户端? kafka Kraft 模式增加投票节点配置后启动报错 kafka-console-consumer.sh 同时读取某个 topic 的所有 partition 能实现吗? 请教一个使用 HAProxy 代理访问 kafka 集群的问题 kafka stream 拓扑的几个疑问 在生产环境中,向 kafka 发送图片消息是否合适 kafka 消费者平滑退出一般是怎么做的? 请教 kafka 独立消费者 如果崩溃了如何获取 offset? 关于 kafka 丢数据 如何获取 KRaft Kafka 的 controller leader 如何从 Kafka 消费的数据中取最大值存储? Kafka Stream 拓扑结构可视化 Kafka 数据同步 请教一下 kafka group 数量比较大对 kafka 性能影响大吗 为什么很多场景数据先写入 kafka 再写入 elastic,而不是直接写 elastic? Golang Kafka Writer 消息被截断 kakfa producer 发消息会堵塞么? kakfa 的 producer 阻塞该怎么查 请问一下实际业务中, kafka 的消费者组一般应用于什么场景? kafka 多线程消费是否必须手动提交 offset/partion 才能避免竞争 求一个基于 kafka 的消息消费框架 kafka 如何实现每 10 秒拉一次数据? 蹲一个 Kafka 大神,新增 partition 没有引起消费组的 rebalance,偶现
Kafka 消息处理冲突问题
lucashuang0722 · 2024-06-25 · via Kafka

背景

我目前有一个 Kafka 集群,包含两个 Kafka 服务器,它们共享同一个 Zookeeper 。集群中有两个主题:corpnet-requests 和 corpnet-responses ,这两个主题都有 3 个 partition 。

系统中有四个客户端:

Client AClient B:订阅两个 Kafka 服务器上的 corpnet-requests 和 corpnet-responses 主题。这两个客户端负责生产包含 guid 、url 、payload 和 auth 的消息到 corpnet-requests 主题。

Client CClient D:同样订阅两个 Kafka 服务器上的 corpnet-requests 和 corpnet-responses 主题。这两个客户端负责消费 corpnet-requests 主题中的消息,执行实际的 HTTP 请求,并将响应结果生产到 corpnet-responses 主题中。

Client AClient B:除了生产请求消息外,还需要消费 corpnet-responses 主题中的消息,以获取实际的 HTTP 响应,完成一次请求的逻辑。

以上设计主要用于解决 Client A 和 B 无法访问公司内网资源的问题,公司内网无法通过 vpn 访问。

问题描述

由于 corpnet-requests 和 corpnet-responses 主题都有多个分区,我担心会出现以下冲突情况:

Client A生产的请求消息的响应(由Client CClient D生成)可能会被Client B消费,反之亦然。

我的疑问

请教各位大佬如何确保每个请求的响应能够准确地返回给发起请求的客户端(即Client A的请求响应不会被Client B消费,反之亦然)。似乎通过 key 来限制 partition 或者规划消费者组都无法保证,当然也有可能是我学艺不精理解有误。。

欢迎大家提供解决方案或建议,谢谢!