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

Tomcat 7优化前及优化后的性能对比

143次阅读
没有评论

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

Tomcat 7 在我们日常开发、测试、生产环境都会使用到,但对于大部分开发人员来说,对其性能还是没有多大了解。本文就对它做一次性能测试,对比优化前后的性能区别。

目录

一、运行环境
二、未调优前
三、优化后
四、总结

一、运行环境

CPU:Intel(R) Pentium(R) P6200@2.13GHz;

内存:4G,装的是 32 位 win7,只认出 3G,没有花时间去整 ramdisk 之类的东西;

操作系统:win7 32 位;

JDK:1.7.0_55

Tomcat:7.0.53

大家不要笑,公司电脑,就给配这样的,慢的要死,悲剧!

下面所有测试都是基于 1000 个请求做的,且都是访问 Tomcat 默认的 ROOT 首页

二、未调优前

并发用户数从 10-1000 挨个测试,测试结果如下:

Tomcat 7 优化前及优化后的性能对比

Tomcat 7 优化前及优化后的性能对比

在 Ubuntu 12.04 LTS 上通过 Tomcat 部署 Solr 4 http://www.linuxidc.com/Linux/2012-09/71158.htm

Ubuntu 下部署 Solr(4.4)到 Tomcat(7.0.53) http://www.linuxidc.com/Linux/2014-05/101443.htm

Linux 下 Apache 与多个 Tomcat 集群负载均衡 http://www.linuxidc.com/Linux/2012-01/51731.htm

Nginx Tomcat 集群负载均衡解决笔记 http://www.linuxidc.com/Linux/2013-07/86827.htm

实例详解 Tomcat 组件安装 +Nginx 反向代理 Tomcat+Apache 使用 mod_jk 和 mod_proxy 反向代理和负载均衡 http://www.linuxidc.com/Linux/2013-06/85290.htm

Apache+Tomcat 环境搭建(JK 部署过程)http://www.linuxidc.com/Linux/2012-11/74474.htm

Tomcat 7 优化前及优化后的性能对比

Tomcat 7 优化前及优化后的性能对比

从上面的测试结果来看,除去 200 用户并发的时候(这时候可能在做 GC),吞吐率和请求处理时间都比较稳定,但请求等待时间到后面就飕飕的往上涨了。经观察,CPU 负载均在 80% 以下。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/102717p2.htm

三、优化后
优化主要是对 Tomcat 做的,主要有两方面:

1、在 bin/catalina.bat 文件中加入下面参数,对 JVM 进行优化,至于这一大驼参数的作用及说明,大家到网上找找,应该有很多的,如:http://www.linuxidc.com/Linux/2014-06/102718.htm

set JAVA_OPTS=
-server
-Xms1000M
-Xmx1000M  #-Xms 与 -Xmx 设成一样的值,避免 JVM 因为频繁的 GC 导致性能大起大落
-Xss512k
-XX:+AggressiveOpts
-XX:+UseBiasedLocking
-XX:PermSize=64M
-XX:MaxPermSize=300M
-XX:+DisableExplicitGC
-XX:MaxTenuringThreshold=31
-XX:+UseConcMarkSweepGC
-XX:+UseParNewGC 
-XX:+CMSParallelRemarkEnabled
-XX:+UseCMSCompactAtFullCollection
-XX:LargePageSizeInBytes=128m 
-XX:+UseFastAccessorMethods
-XX:+UseCMSInitiatingOccupancyOnly
-Djava.awt.headless=true

上述这样的配置,基本上可以达到:

 系统响应时间增快

JVM 回收速度增快同时又不影响系统的响应率

JVM 内存最大化利用

线程阻塞情况最小化

 

2、Tomcat 连接参数的优化,主要是针对吞吐量做优化:

修改 conf/server.xml 文件,把原来

<Connector port=”8080″ protocol=”HTTP/1.1″ />

改成下面的内容

  <Connector port=”8080″ protocol=”HTTP/1.1″
          URIEncoding=”UTF-8″ 
          minSpareThreads=”25″
          maxSpareThreads=”75″
          enableLookups=”false”
          disableUploadTimeout=”true”
          connectionTimeout=”20000″
          acceptCount=”300″ 
          maxThreads=”300″
          maxProcessors=”1000″
          minProcessors=”5″
          useURIValidationHack=”false”
          compression=”on”
          compressionMinSize=”2048″
          compressableMimeType=”text/html,text/xml,text/javascript,text/css,text/plain”
          redirectPort=”8443″/>

然后我们再来看看 10-1000 个并发用户发起 1000 个请求时所表现的性能是怎么的。

Tomcat 7 优化前及优化后的性能对比

Tomcat 7 优化前及优化后的性能对比

Tomcat 7 优化前及优化后的性能对比

Tomcat 7 优化前及优化后的性能对比

大家可以看到,经过优化后,吞吐率已经能达到平均 1800-1900 左右,而处理时间基本能稳定在 0.6ms,而等待时间最高不到 600ms。

四、总结
通过两个结果对比可以看出,吞吐率及服务器处理时间有很大的改观,当然在我这破机器上也就这样一个效果了,再优化估计也不会“飞”起来,有兴趣的朋友可以找台牛 B 点的机器自己试试。试完了希望告诉我结果,让我也高兴一下。

Tomcat 的详细介绍:请点这里
Tomcat 的下载地址:请点这里

Tomcat 7 在我们日常开发、测试、生产环境都会使用到,但对于大部分开发人员来说,对其性能还是没有多大了解。本文就对它做一次性能测试,对比优化前后的性能区别。

目录

一、运行环境
二、未调优前
三、优化后
四、总结

一、运行环境

CPU:Intel(R) Pentium(R) P6200@2.13GHz;

内存:4G,装的是 32 位 win7,只认出 3G,没有花时间去整 ramdisk 之类的东西;

操作系统:win7 32 位;

JDK:1.7.0_55

Tomcat:7.0.53

大家不要笑,公司电脑,就给配这样的,慢的要死,悲剧!

下面所有测试都是基于 1000 个请求做的,且都是访问 Tomcat 默认的 ROOT 首页

二、未调优前

并发用户数从 10-1000 挨个测试,测试结果如下:

Tomcat 7 优化前及优化后的性能对比

Tomcat 7 优化前及优化后的性能对比

在 Ubuntu 12.04 LTS 上通过 Tomcat 部署 Solr 4 http://www.linuxidc.com/Linux/2012-09/71158.htm

Ubuntu 下部署 Solr(4.4)到 Tomcat(7.0.53) http://www.linuxidc.com/Linux/2014-05/101443.htm

Linux 下 Apache 与多个 Tomcat 集群负载均衡 http://www.linuxidc.com/Linux/2012-01/51731.htm

Nginx Tomcat 集群负载均衡解决笔记 http://www.linuxidc.com/Linux/2013-07/86827.htm

实例详解 Tomcat 组件安装 +Nginx 反向代理 Tomcat+Apache 使用 mod_jk 和 mod_proxy 反向代理和负载均衡 http://www.linuxidc.com/Linux/2013-06/85290.htm

Apache+Tomcat 环境搭建(JK 部署过程)http://www.linuxidc.com/Linux/2012-11/74474.htm

Tomcat 7 优化前及优化后的性能对比

Tomcat 7 优化前及优化后的性能对比

从上面的测试结果来看,除去 200 用户并发的时候(这时候可能在做 GC),吞吐率和请求处理时间都比较稳定,但请求等待时间到后面就飕飕的往上涨了。经观察,CPU 负载均在 80% 以下。

更多详情见请继续阅读下一页的精彩内容:http://www.linuxidc.com/Linux/2014-06/102717p2.htm

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