适用场景

容量规划最容易犯的错是「等报警再扩容」。正确做法是用最小成本算清三个数:当前单机能扛多少、业务每周涨多少、扩容需要提前多久。三个数齐了,扩容就是例行动作。

配置步骤(压测标定与拐点识别)

# 1) 压测工具(示例:wrk)
wrk -t8 -c200 -d300s --latency "http://target/api/list?page=1"

# 2) 观察指标(压测中同时采集)
#    QPS、P95/P99 时延、错误率、CPU/内存、DB 连接数与慢查询

# 3) 找拐点:逐步加压
#    并发 50 -> 100 -> 200 -> 400,记录 QPS 与 P95
#    当 P95 明显抬升而 QPS 不再增长,即为拐点,取拐点 70% 作为单机能力

# 4) 压测纪律
#    - 环境与生产一致(规格/配置/数据量级)
#    - 压测数据隔离,避免污染生产库
#    - 压测前通知,避免与备份/批处理叠加

# 5) 结论归档
#    单机能力、瓶颈点(CPU/DB/连接池)、优化建议

关键参数与建议

  • 单机能力:用压测标定(QPS、并发、时延拐点),不要用经验值
  • 增长模型:按周环比推月,大促与新业务上线显式纳入
  • 瓶颈顺序:CPU → 内存 → IO → 网络 → 连接数/队列,逐项验证
  • 扩容触发线:核心 60% 预警、75% 申请、85% 强制;非核心可放宽
  • 提前期:采购+上架+部署+数据同步的总时长要写进台账
  • 成本替代:索引优化、缓存、异步化往往比扩容便宜,优先评估
  • 压测纪律:压测环境与生产配置一致,压测数据隔离
  • 复盘:每次大促后更新单机能力与增长模型参数

容易踩的坑

  • 压测环境规格低于生产,结论不可用
  • 压测库数据量只有生产的 1%,数据库瓶颈测不出来
  • 只压单接口,忽略组合场景与依赖
  • 压测期间跑备份,数据被污染
  • 没有拐点分析,只记了一个 QPS 数字
  • 压测结论不归档,扩容时又拍脑袋

验证与巡检

# 压测结论必备数据
# 并发 | QPS | P95 | P99 | 错误率 | CPU | 内存 | DB 连接
# 拐点并发与拐点 QPS

# 复测:每次大版本上线后复测一次
  • 巡检:压测报告含拐点数据、瓶颈点明确、大版本后已复测

小结

容量模型验收:业务量翻倍时能立刻回答「哪些资源要扩、扩到多少、多久到位、花多少钱」,四项都有数字。

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