Kafka 消费积压 200 万条——不是消费者慢,是 GC 在捣鬼
引言 凌晨 2 点,告警声划破夜空: 【严重告警】Kafka Consumer Lag Topic: order-events Consumer Group: order-consumer-group Lag: 2,000,000+(持续攀升) 第一反应:消费者不够,加机器!从 4 个实例扩到 16 个——Lag 纹丝不动,甚至还在涨。 花了 3 小时排查,最终发现:不是消费者慢,是 GC 在捣鬼。消费者线程频繁 STW(Stop-The-World),每次 Young GC 暂停 200ms+,实际消费效率不到 20%。 这是一次典型的「GC 隐形杀手」事件,写下来希望能帮你避开同样的坑。 一、事故时间线 23:55 告警触发,Lag 从 0 飙到 50 万 00:05 第一反应:消费者不够!扩容 4 → 16 实例 00:15 Lag 继续攀升到 120 万,扩容无效 00:25 开始排查:网络?磁盘?CPU?—— 全部正常 00:35 看到 JFR 数据的那一刻,真相大白 01:00 定位根因 + 开始修复 01:30 修复上线,Lag 开始下降 02:00 Lag 清零,恢....