RocketMQ生产03:性能调优指南 - JVM、OS、Broker 参数优化
引言:性能优化的本质 上线前压测:TPS 轻松 5 万,延迟 5ms 以内。生产环境一跑:TPS 破千就开始 Full GC,延迟飙到 500ms,系统濒临崩溃… 性能问题的常见表现: ❌ TPS 上不去,CPU 使用率却不高 ❌ 频繁 Full GC,Stop-The-World 时间长 ❌ 消息发送延迟高,P99 延迟上秒 ❌ 磁盘 I/O 成瓶颈,写入速度慢 本文目标: ✅ 掌握 JVM 参数调优方法 ✅ 理解操作系统层面优化 ✅ 优化 Broker 核心参数 ✅ 建立性能调优思维模型 一、性能调优方法论 1.1 调优三板斧 1. 测量(Measure) → 建立性能基线 2. 分析(Analyze) → 定位性能瓶颈 3. 优化(Optimize) → 针对性调优 切忌盲目调优: ❌ 看到别人的配置就直接copy ❌ 不测量就调参,凭感觉优化 ❌ 多个参数同时修改,无法定位效果 正确姿势: ✅ 建立性能基线(压测记录初始状态) ✅ 单一变量法(一次只改一个参数) ✅ 量化效果(对比优化前后的指标) 1.2 性能指标体系 维度 核心指标 目标值 采集方式 吞吐量 TPS(消息/秒) 根据业务需求 Prometheus 延迟 P99 延迟(ms) < 50ms 客户端埋点 资源 CPU 使用率 < 70% top 资源 内存使用率 < 80% free -h 资源 磁盘 I/O 等待 < 10% iostat 稳定性 GC 频率 YGC < 1次/秒 jstat 稳定性 Full GC 间隔 > 1小时 jstat 二、JVM 参数调优 2.1 内存配置 2.1.1 堆内存大小 推荐配置: ...