【Tomcat】压力测试和优化

2018-06-18 02:12:08来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

一、采用jmeter进行测试

为什么使用jmeter, 它免费开源, 不断发展, 功能逐渐强大. 可以做功能,负载, 性能测试.一套脚本可以同时用于功能和性能测试.Jmeter 有着众多的插件开发者, 支持多种的测试协议.
关于jmeter的使用,请参考

http://www.hissummer.com/jmeter-summary.html

Jmeter 快速入门教程(二)--创建简单web测试

二、jmeter高级使用

Jmeter的分布式测试(优缺点)

Jmeter如今也可以云?

JMeter 聚合报告之 90% Line 参数说明

jmeter-集合点

 三、性能测试和优化

并发数、QPS、平均响应时间三者之间关系

 

上图横坐标是并发用户数。绿线是CPU使用率;紫线是吞吐量,即QPS;蓝线是时延。
 开始,系统只有一个用户,CPU工作肯定是不饱合的。一方面该服务器可能有多个cpu,但是只处理单个进程,另一方面,在处理一个进程中,有些阶段可能是IO阶段,这个时候会造成CPU等待,但是有没有其他请 求进程可以被处理)。随着并发用户数的增加,CPU利用率上升,QPS相应也增加(公式为QPS=并发用户数/平均响应时间。)随着并发用户数的增加,平均响应时间也在增加,而且平均响应时间的增加是一个指数增加曲线。而当并发数增加到很大时,每秒钟都会有很多请求需要处理,会造成进程(线程)频繁切换,反正真正用于处理请求的时间变少,每秒能够处 理的请求数反而变少,同时用户的请求等待时间也会变大,甚至超过用户的心理底线。

 一个系统吞吐量通常由QPS(TPS)、并发数两个因素决定,每套系统这两个值都有一个相对极限值,在应用场景访问压力下,只要某一项达到系统最高值,系统的吞吐量就上不去了,如果压力继续增大,系统的吞吐量反而会下降,原因是系统超负荷工作,上下文切换、内存等等其它消耗导致系统性能下降。需要找到系统的阈值,不能超过这个值

以下测试场景遵循规则:请求的response的超时时间为1000毫秒

1、tomcat配置:acceptCount="200" maxThreads="200" maxConnections="200" protocol="HTTP/1.1"

模拟最大并发500,循环100次

模拟最大并发400,循环100次

模拟最大并发300,循环100次

模拟最大并发200,循环100次

模拟最大并发100,循环100次

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Eclipse发布的Dynamical web项目在Tomacat文件夹下显示

下一篇:Java数组知识点总结