网易首页 > 网易号 > 正文 申请入驻

MQ 消息积压的应急处理顺序:先止血再排查后预防

0
分享至

线上 MQ 突然积压几百万条消息,监控一片红,老板在旁边盯着,这时候最忌讳什么?上来就翻日志查原因。你查半小时,业务就挂了半小时,这账怎么算都不划算。

处理积压的正确姿势就九个字:先止血、再排查、后预防。优先级永远是先把业务救回来,再谈定位问题。

先说止血,十分钟内必须完成。

第一招,优先扩容消费端。这里有个硬限制你得知道:Kafka 和 RocketMQ 里,一个分区同一时间只能被一个消费线程消费,所以消费线程数最多等于分区数。操作上就是先临时加消费组实例数,再把单个实例的消费线程池核心数调大。大促的时候,我们 16 个读队列只起了 4 个消费者,扩到 16 台,消费速度当场翻倍。

第二招,降级非核心业务。日志、统计、推送这些非核心消息的消费直接关掉,把 CPU、内存、数据库连接全让给核心业务。电商大促时先停掉用户行为分析、商品推荐的消息消费,属于常规操作。

第三招,消息临时转储。积压量到百万级以上,直接消费会把 MQ 集群拖垮。写个简单脚本,把消息先转存到 Redis 或 MySQL,业务高峰过了再慢慢回放。

第四招,跳过死信消息。大量重复失败的死信会阻塞正常消费,先临时跳过,事后再单独处理。



血止住了,业务恢复了,这时候才轮到排查根因。90% 以上的积压问题出在消费端,不是生产端。常见就那么几类:消费端慢 SQL 卡死、第三方接口超时设置过长(比如 30 秒)、线程池队列过长导致任务堆在内存里,还有数据库连接池被耗尽,所有消费线程都在干等。



排查工具方面,Arthas trace 直接抓消费链路的耗时分布,一抓一个准。我当时就发现消费一条消息要 3 秒,全是卡在调下游优惠券接口上,P99 超时严重。后来上游加了一层本地缓存加降级兜底,接口挂了直接走缓存或默认券,单条消息处理从 3 秒降到 20 毫秒,积压很快就消下去了。

代码层面有几个技术点值得说。批量消费:一次拉取 32 条甚至 64 条消息,减少网络往返;虚拟线程:JDK 21 的虚拟线程做消费线程池,并发能力大幅提升;幂等性:用 Redis 的 SETNX 加过期时间实现,比数据库唯一索引快十倍以上。

还有个容易忽略的坑——顺序消息。直接增加读写队列会导致同一个 key 的消息被分到不同队列,顺序全乱。一般做法是暂停非顺序消费,把资源全部倾斜给顺序队列,或者按业务 key 水平拆分、增加分区数,但必须保证同一个 key 永远进同一个队列。真到了队列打满、消费者加不进去的地步,可以建一个临时的"泄洪 Topic",把积压消息快速搬过去,用一批临时机器全力消费,跟原业务完全隔离。



最后说预防。大促前一定要压测消费链路,很多团队只压生产端,结果消费链路被拖垮,一翻车就是大事故。另外积压量要实时告警,超过 1000 条普通告警,超过 10000 条紧急电话告警,短信、企业微信、电话多渠道通知,提前感知总比事后救火强。

说白了,MQ 积压这事,考验的不是你懂多少原理,而是紧急时刻能不能稳住节奏。先救业务,再查原因,最后补预防,这个顺序千万别搞反。你在项目里遇到过消息积压吗?当时是怎么处理的?评论区聊聊。

声明:内容由AI生成

特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。

Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.

相关推荐
热点推荐
福建莆田一受灾鞋店被路人进店“捡鞋”,店主赶来大声斥责“这样做是违法的”,警方介入;网友:这种捡拾行为不合法,也可能感染细菌

福建莆田一受灾鞋店被路人进店“捡鞋”,店主赶来大声斥责“这样做是违法的”,警方介入;网友:这种捡拾行为不合法,也可能感染细菌

三湘都市报
2026-09-07 23:06:25
05后美网八强第一人!21岁新星四盘大战过关,首进大满贯1/4决赛

05后美网八强第一人!21岁新星四盘大战过关,首进大满贯1/4决赛

全景体育V
2026-09-08 05:42:57
2026年生育率预测:老百姓对断绝香火危机的冷漠,官方看到都无奈

2026年生育率预测:老百姓对断绝香火危机的冷漠,官方看到都无奈

匹夫来搞笑
2026-09-08 07:39:38
444分被殡葬专业录取男生已入学,父母曾反对,担心他找不到对象;多名同行发声:24小时待命,月薪过万很少,有人从业后再未参加过婚礼

444分被殡葬专业录取男生已入学,父母曾反对,担心他找不到对象;多名同行发声:24小时待命,月薪过万很少,有人从业后再未参加过婚礼

云南网络广播电视台
2026-09-07 16:33:31
特朗普女婿当面撂话:没有永远的敌人,泽连斯基回应亮了

特朗普女婿当面撂话:没有永远的敌人,泽连斯基回应亮了

影视情报室
2026-09-07 11:14:04
郭德纲风波完全失控!杨议再表态、曹云金看不下去、于谦电影定档

郭德纲风波完全失控!杨议再表态、曹云金看不下去、于谦电影定档

天马幸福的人生
2026-09-08 01:24:16
9月10日苹果发布会全系列汇总:4款iPhone加3款手表加AirPods5售价和亮点一文说透

9月10日苹果发布会全系列汇总:4款iPhone加3款手表加AirPods5售价和亮点一文说透

叮当当科技
2026-09-07 09:12:17
不再妥协!中日交涉谈无果,日本官宣重大动向,中方收回台阶

不再妥协!中日交涉谈无果,日本官宣重大动向,中方收回台阶

面包夹知识
2026-09-07 22:20:03
华为绕开EUV光刻机!麒麟9050 Pro用DUV光刻机造出3D芯片

华为绕开EUV光刻机!麒麟9050 Pro用DUV光刻机造出3D芯片

快科技
2026-09-07 16:17:11
下轮取胜将登顶世界第1!27岁网坛冰美人宣战郑钦文:我会拼到底

下轮取胜将登顶世界第1!27岁网坛冰美人宣战郑钦文:我会拼到底

我爱英超
2026-09-08 06:17:31
“女吃播3巨头”现状:脸像骷髅、被传摘除味觉,有人已立好遗嘱

“女吃播3巨头”现状:脸像骷髅、被传摘除味觉,有人已立好遗嘱

皮皮电影
2026-09-07 10:26:26
特朗普特使:泽连斯基必须同普京“作出妥协”

特朗普特使:泽连斯基必须同普京“作出妥协”

参考消息
2026-09-07 15:07:23
世界杯冠军名宿痛批姆巴佩公开为金球奖造势:幼稚又可悲!

世界杯冠军名宿痛批姆巴佩公开为金球奖造势:幼稚又可悲!

夜白侃球
2026-09-08 10:19:21
案例:湖北一女学生和82岁老人同吃同住,老人直接认其做干女儿

案例:湖北一女学生和82岁老人同吃同住,老人直接认其做干女儿

红豆讲堂
2025-01-27 09:30:03
天助C罗:0-2大冷门,沙特联领头羊6连胜终结,库利巴利自摆乌龙

天助C罗:0-2大冷门,沙特联领头羊6连胜终结,库利巴利自摆乌龙

侧身凌空斩
2026-09-08 04:03:30
河南一女子外出喝酒,3岁儿子睡着被反锁屋内后从窗户坠亡,女子取得孩子父亲谅解,犯过失致人死亡罪获刑3年缓刑4年

河南一女子外出喝酒,3岁儿子睡着被反锁屋内后从窗户坠亡,女子取得孩子父亲谅解,犯过失致人死亡罪获刑3年缓刑4年

扬子晚报
2026-09-07 07:30:28
签证费说涨就涨?抵制声说喊就喊?可9月4日,中国体育代表团1274人豪华阵容官宣,815名健儿直指名古屋!

签证费说涨就涨?抵制声说喊就喊?可9月4日,中国体育代表团1274人豪华阵容官宣,815名健儿直指名古屋!

回京历史梦
2026-09-07 14:18:45
周慧敏深夜悲痛发文:9月3日晚,女星周慧敏更新了社交账号

周慧敏深夜悲痛发文:9月3日晚,女星周慧敏更新了社交账号

东方不败然多多
2026-09-06 08:19:23
海归学历不再吃香?三位学者做了一个“骗人”的实验

海归学历不再吃香?三位学者做了一个“骗人”的实验

新京报
2026-09-08 08:06:25
2026款五羊 S150上市 售价0.598万元起

2026款五羊 S150上市 售价0.598万元起

车质网
2026-09-07 13:50:08
2026-09-08 12:35:00
千纸鹤安安
千纸鹤安安
大自然的搬运工
111文章数 3关注度
往期回顾 全部

科技要闻

小米再次背水一战

头条要闻

新加坡舆论场出现歧视印度裔言论 李显龙、黄循财发声

头条要闻

新加坡舆论场出现歧视印度裔言论 李显龙、黄循财发声

体育要闻

郑钦文,奇迹只发生在相信奇迹的人身上

娱乐要闻

郭德纲乱改抗战歌曲被重罚!

财经要闻

全球黄金“回家”

汽车要闻

领克20 领克的纯电小钢炮这次更运动了

态度原创

艺术
健康
游戏
房产
教育

艺术要闻

90后高学历情侣,租350m²毛坯45天改完:比买房值

同样是脑梗,为何康复结局大不同?

魔兽世界:时光服时光服怎么样了?金币价格稳定,团本才是关键

房产要闻

真快啊!海口这个超级城更,又有大动作!

教育要闻

阳光分班,没法一刀切?我有一计!

无障碍浏览 进入关怀版