Kafka消息队列出现挤压如何解决?

如果 Kafka 中出现大量消息积压,消费速度长期低于生产速度,应该怎么处理?

1先快速解决线上问题,看一下积压的是什么topic业务的数据,如果是日志、埋点、推荐系统的可以直接丢掉,让订单、支付等核心业务逻辑去跑。 本质是快速止血,减少业务的损失。

2如果已经是核心业务逻辑积压了,同一个消费者组里面,消费者数量要大于topic分区数,分区不足先扩容分区,再增加消费者的数量,提升并行消费能力。 一个消费者只能消费一个topic分区的数据,如果直接加消费者不加分区那边也是没有用的

3可以提高消费者每次拉取的offset大小,让消费者一次拉取的数据多一些,减少多次的网络IO。

4如果业务一直都是正常的,没有什么大促或者是搞活动,应该就是下游的消费者出现了接口调用超时、死锁、慢查询等情况,根据日志进行详细的分析,进行优化。 可以根据traceId 去日志平台grep日志,看一下整条链路的执行情况。

5最后就是完善监控,在下次业务出现积压的时候能及时发现,然后进行优化。

相关推荐
stark张宇5 小时前
分布式事务最全图解(6种方案):从强一致的2PC到最终对账,彻底搞懂数据一致性
分布式·后端
会周易的程序员5 小时前
5Draft使用说明书
服务器·c++·分布式·raft·共识
富士康质检员张全蛋5 小时前
Kafka实战 自定义分区器 几种常见的分区器
分布式·kafka
努力努力再努力wz6 小时前
【Redis入门系列】:从 RESP 协议到 redis-plus-plus:Redis 客户端编程与 C++ 接口设计
开发语言·数据库·c++·redis·分布式·缓存·架构
starzy19906 小时前
Flink基础之Flink批流数据读取处理案例剖析:从文件到 Kafka 的完整代码
大数据·flink·kafka
青禾8376 小时前
Git 与 SVN 完全指南:从集中式到分布式的版本控制
分布式·git·svn
2301_800954997 小时前
Git 版本控制核心概念详解:从集中式到分布式
分布式·git
天天喝旺仔7 小时前
gRPC 流式通信实战:从一元调用到双向流,吃透四种 RPC 模式(Go 版)
分布式·http·微服务·rpc·go
明达智控技术1 天前
告别停机内卷!热插拔远程IO,解锁工控运维新范式
分布式·物联网·自动化