Tomcat 性能优化前后,有多大的差距,今天测试给大家看,linux 视频教程推荐
1、在 bin/catalina.bat 文件中加入下面参数,对 JVM 进行优化,至于这一大驼参数的作用及说明,大家到网上找找,应该有很多的,如:http://www.mzone.cc/article/321.html
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 性能优化前后,有多大的差距,今天测试给大家看](https://imgconvert.csdnimg.cn/aHR0cDovL3AzLXR0LmJ5dGVpbWcuY29tL2xhcmdlL3BnYy1pbWFnZS81NmZiZjRkNjE1MDU0MzRmOGViY
jhlYmE1Mzk2ZTNmNA?x-oss-process=image/format,png)
大家可以看到,经过优化后,吞吐率已经能达到平均 1800-1900 左右,而处理时间基本能稳定在 0.6ms,而等待时间最高不到 600ms。
四、总结
====
通过两个结果对比可以看出,吞吐率及服务器处理时间有很大的改观,当然在我这破机器上也就这样一个效果了,再优化估计也不会“飞”起来,有兴趣的朋友可以找台牛 B 点的机器自己试试。试完了希望告诉我结果,让我也高兴一下。
Apache Tomcat 作为著名的 Servlet 容器实现以及轻量级 Java 应用服务器,是 Apache 软件基金会的顶级项目。它开源、轻量,与 JBoss、Weblogic 等企业级应用服务器相比,占用资源小,扩展性好,深受 Java 研发人员喜爱,尤其是在这个互联网发展的时候,除了各种 jvm、mysql 调优之外,有的时候,tomcat 调优也能帮你解决不少的问题呢
servlet
=======
https 和 tomcat
============
需要这份 xming 图谱的,关注+转发后,私信“资料”即可查看获取方式
这是我整理的关于 tomcat 的知识点以及相关的网络、servlet 的相关知识图谱,当然了,今天的重点是 Tomcat,所以,给大家推荐一份文档
总体架构
====
配置
==
评论