适用场景

性能调优最忌讳"凭感觉改参数":改一堆配置,问题没解决还引入新问题。正确做法是量化、分层、单变量。

配置步骤(分层定位流程)

# 1) 客户端:DNS、TLS 握手、首包时间
# 2) 网络:丢包、时延、带宽(ping/mtr/iperf3)
# 3) 网关:连接数、超时、5xx(Nginx/网关日志)
# 4) 应用:CPU、GC、线程池、慢方法
# 5) 数据库:慢查询、锁等待、连接数
# 6) 存储:IOPS、时延、队列深度

关键参数与建议

  • 先量化:明确指标(响应时间、吞吐、错误率)与目标值
  • 分层定位:客户端 → 网络 → 网关 → 应用 → 中间件 → 数据库 → 存储
  • 单变量:一次只改一个参数,改完立即对比
  • 工具配合:压测(wrk/ab/jmeter)+ 链路追踪 + 系统指标
  • 归档:优化前后的数据与配置变更都留档

容易踩的坑

  • 跳过网络与网关,直接查应用
  • 只看平均耗时,忽略 P95/P99
  • 不做对照测试,无法证明改善

验证与巡检

mtr -r -c 20 目标
iostat -x 1 3
  • 巡检:分层数据齐全、瓶颈定位有依据

小结

性能调优的验收标准:指标有量化改善且可复现。改善 10% 是可感知的,改善 1% 属于噪声,不要当作成果。

> 说明:文中命令为通用写法,不同型号/版本可能略有差异,落地前请对照设备实际版本的官方文档;带外管理与安全设备变更建议先在测试设备验证。