如何解决kafka rebalance导致的暂时性不能消费数据问题

文章目录

背景

之前在review同组其它业务的时候,发现竟然把kafka去掉了,问了下原因,有一个单独的服务,我们可以把它称为agent,就是这个服务是动态扩缩容的,会采集一些指标,根据指标在k8s环境动态的scale,然后因为扩缩容会导致kafka 频繁的rebalance,导致线上环境消费数据不平滑,然后就把这个去掉了

思考

这个问题还真让我陷入了思考,其它家公司是如何解决这个问题的,找了下竟然没找到答案, 俗话话,念念不忘,必有回响,让我想起了pulsar这个,竟然解决了这个问题

答案

pulsar有三种消费数据的模式

排它

topic 只能由一个consumer消费

故障转移

很好理解,po有多个consumer,a是主,b,c,d是standy 的,a挂掉,b,c,d会有一个成为主

共享

每个分区可以由多个consumer消费

相关推荐
阿里云云原生4 天前
数据链路再精简:Kafka 如何做到“零 ETL”一键写入 Apache Iceberg?
kafka
阿里云云原生10 天前
告别冗长链路!Kafka × Table Bucket 实现开放表格式零 ETL 实时入湖
云原生·kafka
风吹夏回16 天前
RabbitMQ 核心术语 + Python pika 方法完整讲解
分布式·python·rabbitmq
风吹夏回16 天前
RabbitMQ 三种模式入门:HelloWorld、WorkQueue、PubSub
分布式·rabbitmq·ruby
霸道流氓气质16 天前
分布式追踪与 RequestId 传播完全指南
分布式
cheems952716 天前
[RabbitMQ高级特性] 消息确认机制:从 Ready / Unacked 到 basicAck、basicReject、basicNack 的底层拆解
分布式·rabbitmq·ruby
whaledown16 天前
Kafka 与 Java 消息队列入门:用订单场景理解核心机制
java·kafka·消息队列·springboot
枫华落尽16 天前
【Hadoop01-完全分布式运行模式】
分布式
隔壁阿布都16 天前
ShedLock 分布式定时任务锁框架介绍
spring boot·分布式
文艺倾年16 天前
【强化学习】数学推导专题,20W字总结(十五)
人工智能·分布式·大模型·强化学习·vibecoding