Tomcat 的优化方式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Tomcat 的优化方式相关的知识,希望对你有一定的参考价值。

Tomcat 的优化方式

Tomcat 作为 Web 服务器,它的处理性能直接关系到用户体验,下面是几种常见的

优化措施:

1、去掉对 web.xml 的监视,把 jsp 提前编辑成 Servlet。有富余物理内存的情况, 加大 tomcat 使用的 jvm 的内存。

2、服务器资源

服务器所能提供 CPU、内存、硬盘的性能对处理能力有决定性影响。

  • 对于高并发情况下会有大量的运算,那么 CPU 的速度会直接影响到处

理速度。

  • 内存在大量数据处理的情况下,将会有较大的内存容量需求,可以用 -

Xmx -Xms -XX:MaxPermSize 等参数对内存不同功能块进行划分。我

们之前就遇到过内存分配不足,导致虚拟机一直处于 full GC,从而导

致处理能力严重下降。

  • 硬盘主要问题就是读写性能,当大量文件进行读写时,磁盘极容易成为

性能瓶颈。最好的办法还是利用下面提到的缓存。

3、利用缓存和压缩

对于静态页面最好是能够缓存起来,这样就不必每次从磁盘上读。这里我们采

用了 nginx 作为缓存服务器,将图片、css、js 文件都进行了缓存,有效的

减少了后端 tomcat 的访问。 另外,为了能加快网络传输速度,开启gzip 压缩也是必不可少的。 但考虑到 tomcat 已经需要处理很多东西了,所

以把这个压缩的工作就交给前端的 Nginx 来完成。 除了文本可以用

gzip 压缩,其实很多图片也可以用图像处理工具预先进行压缩,找到一个平

衡点可以让画质损失很小而文件可以减小很多。曾经我就见过一个图片从 300

多 kb 压缩到几十 kb,自己几乎看不出来区别。

4、采用集群

单个服务器性能总是有限的,最好的办法自然是实现横向扩展,那么组建

tomcat 集群是有效提升性能的手段。我们还是采用了 Nginx 来作为请求分

流的服务器,后端多个 tomcat 共享 session 来协同工作。可以参考之前写

的《利用 nginx+tomcat+memcached 组建 web 服务器负载均衡》。

5、优化 tomcat 参数

这里以 tomcat7 的参数配置为例,需要修改 conf/server.xml 文件,主要是优化连

接配置,关闭客户端 dns 查询。

<Connector port="8080"

protocol="org.apache.coyote.http11.Http11NioProtocol"

connectionTimeout="20000"

redirectPort="8443"

maxThreads="500"

minSpareThreads="20"

acceptCount="100"

disableUploadTimeout="true"

enableLookups="false"

URIEncoding="UTF-8" />

以上是关于Tomcat 的优化方式的主要内容,如果未能解决你的问题,请参考以下文章

n卡控制面板里的“优化以提高计算性能”有用吗

机器学习线性回归的损失和优化

视频编码标准优化和画质评估

专场报名七牛云音画质量优化专场

优化win2d实现的萤火虫粒子效果

电视机画质问题--PQ问题