jmeter全面总结-4-压测结果分析
###
再次系统的整理一下深入一下性能测试
###
一,查看结果树
###
二,聚合报告
Label:就是请求名称
Samples:总线程数,值 = 线程数 * 循环次数
Average:
单个请求的平均响应时间,单位是毫秒,值 = 总运行时间 / 发送到服务器的总请求数,
比如运行一次,时间4毫秒,就是4/1 = 4
Median、90%line、95%line、99%line分别代表50%的用户响应时间、90%的用户响应时间、95%的用户响应时间、99%的用户响应时间,也就是有百分之多少的请求小于这个值。其中,90%line是性能测试中比较重要的一个衡量指标。
Min:最小响应时间,单位是毫秒
Max:最大响应时间,单位是毫秒
Error%:错误率,发生错误的请求 / 总请求数
Throughput:
吞吐量,表示每秒完成的请求数。
这个重点理解一下,比如250/s
就是说按照这个性能,一秒可以处理250个请求,
看上面的截图,904/s,是怎么算出来的,是使用1000/平均值*线程数,为什么是1000,因为我们平均值是毫秒,我们是5个线程运行的,所以是1000/5*5 = 1000 差不多,但是统计有差异,因为jmeter的取样是有时间延迟的,不是最新的,
注意这个吞吐量,我们再实际测试的时候,不能使用图形化界面,因为这个界面也会消耗一些资源的,
并发和tps的关系
并发增加,tps是上升的,但是并发一直增加到一个临界值,tps就不会变大了,如果并发再大,就还是有error了,所以是一个先上升,然后不变,然后报错的关系,
###
对比性能
可以使用python启动一个服务,
然后使用docker 运行一个Nginx启动一个服务,然后看看性能是否有提升,可以访问Nginx的静态网页,
这样就可以看到Nginx部署之后的性能提升情况,
经过测试很明显,Nginx的处理性能,比纯python的要好多了,因为Nginx是一个专业的web服务器
###