kafka 线上消费积压问题

背景

线上kafka 流量大,消费小于生产,如何处理?

方案

增加consumer数量

可以增加consumer的消费者,不过这个只能在一定程序上缓解,如果consumer 数量超过partition 数,那有的就会空转,解决不了问题,这种在线上直接扩容后端即可

重分配

在上面的基础上,可以把一个topic通过其它的方案,打散到多个分区,比如A topic 3个分区,通过flink 打散到新的topic 9个分区,然后扩容后的后端消费新的topic。这样可以不动老的topic ,方案灵活,效率高

增加分区数

在增加consumer这个方案的基础上,可以增加分区数,这个不建议,在线上修改。

调整consumer 参数

比如批量消费,一次多pull 几条,配置要支持动态调整

检查消费者的瓶颈

检查是不是本身消费数据有瓶颈,优化逻辑代码

相关推荐
roman_日积跬步-终至千里29 分钟前
【分布式理论13】分布式存储:数据存储难题与解决之道
分布式
(; ̄ェ ̄)。1 小时前
在Nodejs中使用kafka(三)offset偏移量控制策略,数据保存策略
分布式·后端·kafka·node.js
binbinxyz3 小时前
【Kafka系列】Kafka 消息传递保障机制
分布式·kafka
苏生Susheng4 小时前
【SpringBoot整合系列】Kafka的各种模式及Spring Boot整合的使用基础案例
java·spring boot·后端·spring·kafka·消息队列·并发
T.O.P115 小时前
分布式ID介绍&实现方案总结
分布式
Golinie5 小时前
【Go | 从0实现简单分布式缓存】-1:LRU缓存淘汰策略与单机并发缓存
分布式·缓存·golang
漫步者TZ8 小时前
【kafka系列】Kafka事务的实现原理
数据库·分布式·kafka
IT闫10 小时前
【Dubbo+Zookeeper】——SpringBoot+Dubbo+Zookeeper知识整合
分布式·zookeeper·云原生·dubbo
2501_9032386511 小时前
Kafka中commitAsync的使用与实例解析
分布式·kafka·个人开发·linq
何似在人间57512 小时前
RabbitMQ 消息队列的工作模式
分布式·rabbitmq