写点什么

Tomcat 性能优化前后,有多大的差距,今天测试给大家看 (1)

作者:Java高工P7
  • 2021 年 11 月 10 日
  • 本文字数:1306 字

    阅读完需:约 4 分钟

=====


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


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/aHR0cDovL3A2LXR0LmJ5dGVpbWcuY29tL2xhcmdlL3BnYy1pbWFnZS


《Android学习笔记总结+最新移动架构视频+大厂安卓面试真题+项目实战源码讲义》
浏览器打开:qq.cn.hn/FTe 免费领取
复制代码


85YWM0NTNlMzY5OWM0MGVjYjg2NGI1M2FkZjgwNzIyYw?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,所以,给大家推荐一份文档



总体架构


====



用户头像

Java高工P7

关注

还未添加个人签名 2021.11.08 加入

还未添加个人简介

评论

发布
暂无评论
Tomcat性能优化前后,有多大的差距,今天测试给大家看(1)