1. 容量压测概述

1.1 容量压测的定义

容量压测(Capacity Load Testing)是指在特定硬件、网络与软件配置下,通过模拟真实用户并发请求,逐步增加系统负载,以测量系统最大处理能力、资源瓶颈与性能拐点的测试方法。其核心目标是回答“系统在给定资源下能支撑多少用户/交易/吞吐量”。

关键定义公式: 容量压测 = 负载梯度 + 资源监控 + 拐点识别 + 容量基线

1.2 容量压测的目标

目标维度 具体描述 量化指标示例
最大吞吐量 系统在不违反SLA前提下能处理的最大TPS/QPS TPS ≥ 5000,错误率 < 0.1%
资源拐点 CPU/内存/IO/网络达到饱和时的并发用户数 CPU 80% 时并发用户数 = 1200
弹性边界 系统从正常到崩溃的负载阈值 最大并发用户数 = 2000
容量基线 每次压测后输出的标准化容量报告 基线版本 v2.3.1,TPS=4800

1.3 容量压测的价值

  • 风险前置:在系统上线前发现容量不足、内存泄漏、连接池耗尽等隐患,避免生产故障。
  • 资源规划:为扩缩容、成本优化提供数据支撑,避免过度或不足配置。
  • SLA 保障:验证系统是否满足合同或内部承诺的性能指标。
  • 变更验证:每次架构升级、代码重构、中间件替换后,通过容量压测确认性能未退化。
  • 容量预测:基于历史压测数据建立容量模型,预测未来业务增长下的资源需求。
实践建议:容量压测应作为每次大版本发布的“门禁”环节,未通过容量基线校验的版本禁止上线。

1.4 容量压测在系统生命周期中的位置

容量压测不是孤立的活动,而是贯穿系统生命周期的关键质量门禁。下图展示了容量压测在典型软件生命周期中的嵌入位置:

容量压测在系统生命周期中的位置 需求分析 架构设计 开发编码 功能测试 容量压测 (性能门禁 + 容量基线) 预发布验证 生产上线 日常巡检 容量扩容 容量不足反馈 → 扩容/优化后再次压测

1.5 容量压测的典型触发时机

生命周期阶段 触发事件 压测重点
功能测试完成后 版本提测 核心接口最大TPS、响应时间
预发布前 上线评审 全链路容量、数据库连接池
生产运行中 日常巡检 容量基线对比、资源水位
业务大促前 活动预案 峰值容量、弹性伸缩验证
架构变更后 中间件/数据库升级 性能回归、容量对比