1,案例背景
E系统是某行跨行支付系统,该系统承载了该行主要的网上支付的跨行支付业务。该系统的高效稳定运行,对于该行的跨行支付业务的稳定发展起着至关重要的作用。随着互联网的发展与普及,网上跨行支付业务量呈逐年增长的趋势。另外,生产维护部门计划对该系统进行大版本升级。为了评估该系统的处理性能以及是否可以应对未来业务量的增长以及验证大版本升级后系统的性能表现,有必要对该系统进行性能测试。
本案例将通过混合负载测试场景测试E系统的高效性。
2、需求分析
在本案例中,主要从业务模型方面进行需求分析。
业务模型分析是简历测试场景的基础,包括业务交易和和业务场景的分析、用户类型及用户规模的分析等。
在需求分析阶段,对被测系统生产运行数据进行统计分析,得出被测系统的平均交易量、峰值交易量、交易量的业务排名,交易的平均响应时间以及最慢交易排名等;还包括业务交易的分布特征,如日中、日初和日末的交易类别以及分布,正常日及节假日、正常日与营销日的交易分布等。
一天中80%的交易在9:00—20:00这11小时内完成;根据这个规律算出每秒交易的笔数为59.74笔;每小时的交易量为215058笔;高峰TPS为80.3笔/s; 高峰小时的交易量为257454笔;高峰TPS系统=80.3/58.74=1.34,该系数为1.4;高峰小时交易量系数=257454/215058=1.2,该系数为1.2。
通过调研分析,A001、A002、A009这3支交易之和占总交易的99%以上,故选取这3支作为被测交易,A001交易占比取41.10%,A002交易占比57.50%,A009交易占比1.40%。
根据两个二次多项式推算出本案例测试按照2019年的高峰TPS=196.74笔/s作为本次的测试目标。
3、评价指标
评价指标包括交易和系统两个层面的指标。
3.1交易层面:系统每秒处理的交易笔数是否可以达到目标TPS,各交易响应时间、交易成功率是否满足要求。
3.2系统层面:各服务器的cpu和内存的使用率,磁盘读写和网络读写的效率。
4、场景设计
设计混合负载测试场景,考察E系统在多支交易按一定交易比例并发执行情况下下的性能表现。本案例中场景设置有3个梯度,运行时长为30分钟的混合负载测试场景。
5、测试结果分析
E系统各测试场景平均交易响应时间如图。
E系统各测试场景各服务器CPU和内存使用情况如图。
测试结果说明:应用系统的处理能力能够满足2019年的业务处理能力,且系统的各服务器不存在瓶颈。
6、经验总结
混合负载测试就是对被测系统选取一定的比例的被测交易按照一定的比例组成与生产中类似的场景,对服务器进行并发性能测试,获得交易的响应时间、吞吐量随负载的的变化趋势,考察整体系统是否存在性能隐患,资源使用是否存在瓶颈。
对于一个被测系统来讲,交易数量往往很多。考虑到测试成本,性能测试通常不能将系统支持的所有交易都纳入到测试范围,对于已经投产的系统,为使测试场景尽量贴切实际情况,可以从生产运维数据中直接获取日交易量、高峰时段的交易量、峰值TPS、交易响应时间以及各个交易占比等数据用于测试场景的设计。另外,被挑选交易的交易合计量一般应超过总交易量的80%。
请点击输入图片描述