第一章 支付网关2、3方压力性能测试概述
1.1 被测系统定义
支付网关PG作为本次测试的被测系统,该系统的主要功能包括:2方交易、3方交易等;
在本次测试中,将针对上述的交易接口进行压力测试,检查并评估在测试环境中,系统对负载的承受能力,在不同的用户连接情况下,系统地吞吐能力和响应能力,以及在预计的数据容量中,系统能够容忍的最大用户数。
1.2 测试范围
主要接口如下:
2方交易
3方交易
测试终端号加入风控元素
设置3方支付页面等待时间6秒、 8秒不等情况
测试工具:Badboy+jmeter
1.3 业务流程
本次性能测试中,选择的2、3方交易的业务流程如下:
1、2方交易
测试页面请求2方接口进行交易,根据请求参数中商户ID、终端ID、网站订单号、交易币种、交易金额、支付方式[默认为Credit Card]、持卡人信息、产品信息等
2、3方交易
测试页面请求3方接口进行交易,根据请求参数中商户ID、终端ID、网站订单号、交易币种、交易金额、支付方式[默认为Credit Card]、卡号、有效期、安全码持卡人信息、产品信息等
关键点描述(KP)
本次性能测试具体的硬件和网络环境如下:
服务器设备:服务端、 CPU2核 内存4g 测试机内存8g
操作系统: centos7.2 64位
网络环境: 局域网100M
数据库:Oracle
客户端: PC (Windows7 )
网络拓扑和结构图如下:
第二章 测试过程及结果描述
2.1 2方接口
测试场景
第1次测试采取500用户并发
第2次测试采取400用户并发;(400用户不间断请求,确保任何时间点请求用户都在400);
测试中,使用逐步加压的模式,采用:每隔1秒启动15个并发用户(Vuser)的方式,即:每隔1秒,启动15个Vuser,经过27秒 、34秒后 达到用户的并发数.执行初始化请求,初始化成功后,释放资源重新再次请求。
这次测试都部署在如上的场景中。
运行的脚本部署在1台PC机,主要目的就是检查在较大并发压力的情况下,支付网关子系统的性能表现。
Pc机器本身的资源消耗情况: cup 内存等,
观察被压服务器的 cpu 内存 的情况
测试结果
- 两次测试的支付网关子系统的服务器cpu 占用率很低不超过10%,内存占用率 低于15%;
2.2 第一次测试2方交易接口
第一次测试使用了500个并发用户,交易接口响应时间 (秒)
可以看出整个测试过程中,2方交易接口响应时间平稳,无大幅波动的情况,平均响应时间为1.605秒。
测试中, 图形结果显示:
综合上面2种情况,以及结合机器资源占用情况可以得出结论,服务器在当前压力情况下,处理能力正常. 但是平均处理时间偏长.不符合实际的场景需要。
2.3 第二次测试2方交易接口
第二次测试增加了并发用户数(350)。
在初始化压力测试过程中,聚合报告如下:
可以看出整个测试过程中,压力测试过程中响应时间平稳,无大幅波动的情况,平均响应时间为0.778秒,相比500 用户时增加少了0.83s。
350用户的情况下,图形结果如下图:
其中绝大部分都在正常偏差范围内 响应时间也是在实际允许的范围内。
根据上图可以得出结论,在350 用户请求的情况下,事物成功率达到100%;而500用户处理时间有点长.和测试pc端自身的资源配置、与测试服务器间网络等因素有一定关联。
2.4 第一次测试3方交易接口
第一次测试增加了并发用户数(300)。
在压力测试过程中,聚合报告如下图:
可以看出整个测试过程中,从支付开始到支付结束,无大幅波动的情况,平均响应时间较快 为0.771s 存在错误率为0.01%
300用户的情况下,图形结果如下图:
第一次测试增加了并发用户数(300)。
根据上图可以得出结论,在300 用户请求的情况下,事物成功率非常高,达到99.99%。
2.5 第二次测试3方交易接口
第二次测试增加了并发用户数(250)。
在压力测试过程中,聚合报告如下图:
可以看出整个测试过程中,从支付开始到支付结束,无大幅波动的情况,平均响应时间很快 为0.502s 存在错误率为0.01%。
250用户的情况下,图形结果如下图:
第一次测试增加了并发用户数(250)。
根据上图可以得出结论,在250 用户请求的情况下,响应时间较快.偏离的较少。
2.6 第三次测试3方交易接口
第三次测试增加了并发用户数(400)。
在压力测试过程中,聚合报告如下图:
可以看出整个测试过程中,从支付开始到支付结束,无大幅波动的情况,平均响应时间很快 为1.028s 存在错误率为2.47%。
400用户的情况下,图形结果如下图:
第三次测试增加了并发用户数(400)。
根据上图可以得出结论,在400 用户请求的情况下,响应时间正常.错误率高.偏离不少。
2.7 测试结论
2方交易接口在350用户并发的情况 ,平均处理时间正常0.778s,无任何请求失败的情况发生,而当并发用户为500 的情况下,平均处理时间延迟至1.605s;
所以,2方交易接口性能指标值为350 左右,处理时间平均为0.778s,理论上每秒处理用户为350个左右.在网络状态良好.服务器资源使用率正常的情况下。
3方请求接口,性能指标值为300 左右,处理时间平均为0.771s,理论上每秒处理用户为300个左右,在250的时候处理平均响应时间为0.502s.还有一定的剩余空间.但是在400并发的时候处理平均时间为1.028s 但是错误率偏高.
综上所述 :
1、网关的2方交易参考性能指标是350 、3方交易参考性能指标是300。
2、测试和上个版本的 loadrunner 压力测试结果基本吻合。
3、测试过程中服务器的cpu使用率在2%-55%、内存使用正常、使用率在30%以下。
4、测试机的资源【内存 cpu等 】使用率正常。