阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

Tomcat压力测试

130次阅读
没有评论

共计 1728 个字符,预计需要花费 5 分钟才能阅读完成。

Apache JMeter 是 Apache 组织开发的基于 Java 的压力测试工具。用于对软件做压力测试,它最初被设计用于 Web 应用测试,但后来扩展到其他测试领域。它可以用于测试静态和动态资源,例如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库、FTP 服务器,等等。JMeter 可以用于对服务器、网络或对象模拟巨大的负载,来自不同压力类别下测试它们的强度和分析整体性能

JMeter 的作用

能够对 HTTP 和 FTP 服务器进行压力和性能测试,也可以对任何数据库进行同样的测试(通过 JDBC)。

完全的可移植性和 100% 纯 java。

完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。

精心的 GUI 设计允许快速操作和更精确的计时。

缓存和离线分析 / 回放测试结果。

下载地址:http://jmeter.apache.org/download_jmeter.cgi

JMeter 安装使用

将下载好的压缩包在 windows 中解压(需要先安装 JDK),解压后进入到 bin 目录双击 jmeter.bat,等待启动

Tomcat 压力测试

设置中文

Tomcat 压力测试

创建测试

Tomcat 压力测试

添加线程组,使用线程模拟用户的并发

Tomcat 压力测试

Tomcat 压力测试

1000 个线程循环 10 次,tomcat 会收到 10000 个请求

添加并设置 http 请求

Tomcat 压力测试

Tomcat 压力测试

添加监控

Tomcat 压力测试

启动测试

Tomcat 压力测试

查看结果

Tomcat 压力测试

标签:说明是请求类型,如 Http,FTP 等请求。样本总数:也就是图形报表中的样本数目,总共发送到服务器的样本数目。平均值:也就是图形报表中的平均值,是总运行时间除以发送到服务器的请求数。居中的数值:也就是图形报表中的中间值,是代表时间的数字,有一半的服务器响应时间低于该值而另一半高于该值。90%&95%&99%:有多少请求的响应时间比给出的数值还要小。最小:是代表时间的数字, 是服务器响应的最短时间。最大: 是代表时间的数字, 是服务器响应的最长时间。异常 %: 请求的错误百分比。吞吐量: 也就是图形报表中的吞吐量,这里是服务器每单位时间处理的请求数,注意查看是秒或是分钟。发送 / 接收 KB/sec: 是每秒钟发送 / 接收的字节数。(时间的单位为 ms)

通过上面测试可以看出,tomcat 在不做任何调整时,吞吐量为 587 次 / 秒。这个吞吐量跟接口的业务逻辑关系很大,如果业务逻辑复杂,需要比较长时间计算的,可能吞吐量只有几十次 / 秒,我这里测试的时候没有添加任务业务逻辑,才会出现吞吐量为 587 次 / 秒的情况。这里的吞吐量最好是经过多次测试取平均值,因为单次测试具有一定的随机性

调整 tomcat 线程池

[root@zutuanxue bin]# vim /opt/tomcat1/conf/server.xml <Connector port="8080" protocol="HTTP/1.1" maxThreads="1000" minSpareThreads="200" prestartminSpareThreads="true" connectionTimeout="20000" redirectPort="8443" /> # 调整最大线程数为 1000,最小为 200,这个线程的数量要反复调整,然后对比测试结果,找出一个适合自己的值

调整队列

[root@zutuanxue bin]# vim /opt/tomcat1/conf/server.xml <Connector port="8080" protocol="HTTP/1.1" maxThreads="1000" minSpareThreads="200" prestartminSpareThreads="true" maxQueueSize="100" connectionTimeout="20000" redirectPort="8443" /> 默认情况下,请求发送到 tomcat,如果 tomcat 正忙,那么该请求会一直等待。这样虽然可以保证每个请求都能请求到,但是请求时间就会边长。有些时候,我们也不一定要求请求一定等待,可以设置最大等待队列大小,如果超过就不等待了。这样虽然有些请求是失败的,但是请求时间会虽短。典型的是 12306

参数介绍可以去官网查看:https://tomcat.apache.org/tomcat-9.0-doc/config/executor.html

正文完
星哥说事-微信公众号
post-qrcode
 
星锅
版权声明:本站原创文章,由 星锅 2022-06-09发表,共计1728字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中