性能验证包括哪些内容,核心覆盖基准性能、负载性能、稳定性、并发性能、极限压力、恢复能力、资源占用、兼容性性能、业务场景性能九个板块,你可以按业务优先级分批执行,优先跑通业务场景性能与稳定性验证,再补充压力与恢复类测试,该验证框架适合软件服务、硬件设备、嵌入式模块,不适用于成品安全合规类检测,这类检测需要单独走GB/T25000.51软件质量模型对应的合规测评流程。

性能验证之基准性能

基准性能是系统在空载、常规轻量流量下的基础表现,用来获取一组基线数据,作为后续所有对比的参照。你需要采集单次请求响应时长、单任务处理吞吐、单次运算耗时、单次读写速度,同时记录此时的CPU、内存、磁盘、带宽占用数值。每一轮基准测试要重复执行不少于20次,剔除首尾异常值之后取均值,避免单次抖动带来的误判。很多人只测一次基准数据,后续压力测试对比时,偏差会被放大,无法判断性能衰减是负载带来还是本身波动造成。

性能验证之负载与并发性能

负载性能验证观测系统在持续平稳业务流量下的指标变化,并发性能验证多用户、多任务同时发起请求时的表现。你需要设置梯度并发用户数,从低并发逐步提升,持续观测响应延迟、吞吐量、错误率三个核心指标,当错误率持续上升或者延迟翻倍时,记录当前并发数值,这个数值就是系统较为稳妥的并发上限。

测试类型持续时长核心观测指标判定标准
平稳负载测试30分钟吞吐量、平均延迟指标波动幅度低于20%
梯度并发测试每梯度10分钟错误率、95分位延迟错误率低于0.5%

性能验证之稳定性

稳定性验证也就是长时间耐久测试,在固定中等负载下持续运行,验证系统会不会出现内存泄漏、连接泄漏、资源缓慢堆积的问题。常规时长设置为72小时,每隔一小时抓取一次资源快照,重点关注内存占用是否持续单向上涨、数据库连接是否无法释放。如果运行到40小时出现内存持续走高,即便业务没有报错,也属于稳定性不达标,长期上线后会出现渐进式卡顿。

性能验证之极限压力

压力验证不断拉高流量,找到系统的性能拐点和崩溃点,区分系统的安全承载区间和过载区间。你不需要把系统压到彻底宕机,重点记录拐点位置,拐点之后,系统处理能力不再上涨,延迟快速抬升。这部分数据用来设置流量限流阈值,保护线上服务。

性能验证之故障恢复性能

故障恢复性能验证在过载、进程重启、节点下线之后,系统能否回落至正常性能水平。当流量降低到常规负载,你要观测响应延迟、资源占用多久回归基准线,统计恢复耗时。恢复耗时过长,会放大线上故障的影响范围。

性能验证之资源占用性能

资源占用验证统计不同负载下各项硬件资源的消耗水平。

  • CPU使用率、CPU上下文切换次数
  • 物理内存、虚拟内存占用
  • 磁盘IO读写速率、IO等待时间
  • 网络收发速率、网络丢包

资源指标不超标,是上层业务性能稳定的底层前提,很多响应慢的问题根源都在资源瓶颈。

性能验证之兼容性性能

兼容性性能验证在不同版本依赖、不同硬件配置、不同运行环境下的性能一致性。同一套程序,在低配服务器和高配服务器、新旧操作系统里,延迟和吞吐会存在差异,你需要记录差异范围,划定适配的环境清单,不在清单内的环境,性能表现不纳入验收范围。

性能验证之业务场景性能

业务场景性能是贴合真实用户链路的验证,区别于单纯接口压测。你按照真实操作顺序串联多个步骤,比如查询、提交、回调、导出,整条链路端到端计时,而不是单独测每个接口。接口指标全部合格,串联成完整业务之后,依然可能出现排队等待、锁竞争导致的性能下滑,这也是验收阶段最容易被漏掉的一环。

验收判定,优先看业务链路指标。