以下转载自:https://www.cnblogs.com/atwanli/articles/4908475.html
jmeter压力测试报告
XXX压力测试报告
时间:2015-08-04 测试人员:xxx
目录
XXX压力测试报告... 1
一 测试内容... 2
二 测试方法... 2
三 测试目标... 2
四 测试环境... 2
五 系统部署... 3
5.1 物理部署... 3
5.2 网络访问... 3
六 性能测试结果与分析... 4
6.1 jmeter集群压测(5进程-每个进行10线程)... 4
6.2 jmeter集群压测(10进程-每个进行5线程)... 7
6.3 jmeter集群压测(10进程-每个进行10线程)... 11
七 结果汇总分析... 13
一 测试内容
本次测试是针对xxx系统进行的压力测试,在交易接口中,只对交易接口进行压力测试,其中涵盖数据验签与签名功能。
二 测试方法
本次采用apache的开源测试工具jmeter,采用本地动态拼装请求数据并通过http协议post方式发送支付请求。并采用650张测试银行卡测试,其中大概有30张存在“无足够的存款”和“受限制的卡”情况。
三 测试目标
1) 获取在单机部署情况下最大TPS值
2) 是否可以达到原来预期值TPS:50
四 测试环境
环境机器型号操作系统硬件cpu硬件mem
客户端server2008虚拟机windows32核32G
服务端HP DL580linux64核126G
由于客户端与服务端的机器性能优秀,暂不会对压测形成瓶颈,该方面影响可以忽略
五 系统部署
5.1 物理部署
5.2 网络访问
六 性能测试结果与分析
6.1 jmeter集群压测(5进程-每个进行10线程)
启5个进程,每个进程启动10个线程,并发为50,项目日志开启info状态
6.1.1 聚合报告
Label#SamplesAverageMedian90%Line95%Line99%LineMinMaxError%TPSKB/sec
1228055473665126365218150300030.2665.396.5
2336055193625036185200150300030.2166.598.5
3435055363655086215210150348990.2665.697.1
4482055273655076185206150348990.2465.196.3
5490055353645076165211150348990.2763.994.5
6499015323645056145207150348990.2761.090.2
7500005313635046135207150348990.27%60.990.1
6.1.2 每秒的响应分布图
6.1.3 响应时间分布图
6.1.4 请求失败与成功分布图
6.1.5 结果分析
总笔数Jmeter错误笔数请求前置响应超长笔数服务本地处理超长笔数和404
5000013512015
在使用jmeter压测请求被F5转发到apache server代理上,由于交易处理过程中处理时间过长造成长时间无响应,代理返回502 Proxy Error错误。
其中请求前置响应超长笔数在向前置获取结果返回的耗时超过3分钟,其余耗时均低于5s,前置接收到的晚,初步判定网络堵塞
本地业务处理的错误原因为签名、验签、获取数据及请求时404等
6.2 jmeter集群压测(10进程-每个进行5线程)
启10个进程,每个进程启动5个线程,并发为50,项目日志开启info状态
6.2.1 聚合报告
Label#SamplesAverageMedian90%Line95%Line99%LineMinMaxError%TPSKB/sec
1110105553484956055196148300030.2668.7101.5
228910507333473568517855300150.2576.3121.9
336310501332475575517655300310.2477.1114.0
446310485331466557517255300310.2178.6116.3
550000478326460551516655300310.2172.1106.7
6.2.2 每秒的响应分布图
6.2.3 响应时间分布图
6.2.4 请求失败与成功分布图
6.2.5 应用系统状态
6.2.6 结果分析
总笔数Jmeter错误笔数请求前置响应超长笔数服务本地处理超长笔数和404
500001059213
1 在使用jmeter压测请求被F5转发到apache server代理上,由于交易处理过程中处理时间过长造成长时间无响应,代理返回502 Proxy Error错误。
2 其中请求前置响应超长笔数在向前置获取结果返回的耗时超过3分钟,其余耗时均低于5s,前置接收到的晚,初步判定网络堵塞
3 本地业务处理的错误原因为签名、验签、获取数据及请求时404等
6.3 jmeter集群压测(10进程-每个进行10线程)
启10个进程,每个进程启动10个线程,并发为100,项目日志开启info状态
6.3.1 聚合报告
Label#SamplesAverageMedian90%Line95%Line99%LineMinMaxError%TPSKB/sec
1500001219896166526925808209383060.3068.0100.5
6.3.2 每秒的响应分布图
6.3.3 响应时间分布图
6.3.4 请求失败与成功分布图
6.3.5 结果分析
总笔数Jmeter错误笔数请求前置响应超长笔数服务本地处理超长笔数和404
5000015011931
1 在使用jmeter压测请求被F5转发到apache server代理上,由于交易处理过程中处理时间过长造成长时间无响应,代理返回502 Proxy Error错误。
2 其中请求前置响应超长笔数在向前置获取结果返回的耗时超过3分钟,其余耗时均低于5s,前置接收到的晚,初步判定网络堵塞
3 本地业务处理的错误原因为签名、验签、获取数据及请求时404等
6.4 jmeter集群压测(30进程-每个进行5线程)
启30个进程,每个进程启动5个线程,并发为150,项目日志开启info状态
6.4.1 聚合报告
Label#SamplesAverageMedian90%Line95%Line99%LineMinMaxError%TPSKB/sec
115000014731924173319596156222351070.2189.5132.2
6.4.2 每秒的响应分布图
6.4.3 响应时间分布图
6.4.4 应用系统状态
6.4.5 客户端系统状态
6.4.6 结果分析
暂未统计
6.5 jmeter集群压测(20进程-每个进行5线程)
启20个进程,每个进程启动5个线程,并发为100,项目日志开启info状态,超时时间2000ms
6.5.1 聚合报告
Label#SamplesAverageMedian90%Line95%Line99%LineMinMaxError%TPSKB/sec
12000008677221073129656741100530.8492.8138.6
6.5.2 每秒的响应分布图
6.5.3 响应时间分布图
6.5.4 请求失败与成功分布图
6.5.5 结果分析
总笔数Jmeter错误笔数TPS
10000073098.0
1 由于本地客户端限定2000毫秒不响应就认为失败,所以失败率偏高
七 结果汇总分析
Label#SamplesAverageMedian90%Line95%Line进程线程并发Error%TPSKB/sec
50并发50000531363504613510500.27%60.990.1
50并发50000478326460551105500.2172.1106.7
100并发5000012198961665269210101000.3068.0100.5
150并发15000014731924173319593051500.2189.5132.2
100并发200000867722107312962051000.8492.8138.6
使用jmeter压测时,如果使用1个进程开多个线程进行压测,一个进程很难快速处理多个线程,造成本地处理浪费大量时间用于调度,最终压力上不去。
当采用集群压测时,启用多个进程调度少量线程,解决本地耗时,TPS明显提升。
在启动10个进程50线程时效果最佳,符合交易每秒钟处理的交易笔数,当提升并发到100时,交易响应时间明显提升。
压测过程中出现的错误主要有:
1、 请求资源404错误
2、 请求前置网络堵塞,每次均为3分钟
3、 本地签名、验签、获取数据耗时过长
最终压测结果TPS:90-100时可保证响应时间不超过2s
分类: 压力测试
好文要顶 关注我 收藏该文
W&L
关注 - 11
粉丝 - 23
+加关注
2
0
posted @ 2015-10-25 11:38 W&L阅读(38842) 评论(2) 编辑 收藏