tomcat性能优化怎么配置?tomcat性能调优详解

TheDisguiser 2020-05-05 22:25:32 java常见问答 7282

Tomcat大家都知道吧,这次我们要讲解的是tomcat的性能优化,看完本篇文章后,相信你的tomcat一定会更加高效、快捷的。

一、 启动时的占用内存优化;

调优中,Windows下是在catalina.bat中,Linux中是在catalina.sh中设置。例如:-XX:PermSize=256M -XX:MaxPermSize=512M -Xms512m -Xmx1024m

其中,

Xms JVM初始堆大小

-XmxJVM堆的最大值,实际参数根据服务器配置或项目具体设置。

-XX:PermSize= JVM初始分配的非堆内存

-XX:MaxPermSize= JVM最大允许分配的非堆内存,按需分配

二、tomcat线程池优化

配置文件server.xml中有:

< minSpareThreads = "100"
maxThreads = "600"
protocol = "HTTP/1.1"
port = "80" >
    maxSpareThreads = "500"
acceptCount = "700"
connectionTimeout = "20000" / >

其中, maxThreads="x"表示最多同时处理x个连接; minSpareThreads="x"表示初始化x个连接; maxSpareThreads="x"表示最多可以有x个连接,一旦超过x个,则会关闭不再需要的线程; acceptCount="x"当同时连接的人数到达maxThreads时还可以排队,队列大小为x,超过x就不处理。

三、HTTP压缩优化;

HTTP压缩可以极大的提高网站访问速度,相对于普通浏览过程HTML、CSS、JS、Text等可以提高40%左右的流量。它的工作原理是在客户端请求网页后,从服务端将网页文件压缩,再下载到客户端,再由客户端浏览器负责解压缩并浏览。相对于普通的浏览过程HTML、CSS、JS、Text等,可以节省40%的流量,最最重要的是对于动态生成的如CGI、php、jsp、asp、servlet等输出的网页也可以进行压缩,而且压缩效率十分厉害。

参数说明: compression 打开压缩功能 compressionMinSize 启用压缩的输出内容大小,这里默认是2kb compressionableMimeType 压缩类型 connectionTimeout 建立客户连接超时时间,如果为-1,表示不限制建立客户连接的时间。

Tomcat配置示例:

< port = "9027" >
    protocol = "HTTP/1.1"
maxHttpHeaderSize = "8192"
maxThreads = "1000"
minSpareThreads = "100"
maxSpareThreads = "1000"
minProcessors = "100"
maxProcessors = "1000"
enableLookups = "false"
compression = "on"
compressionMinSize = "2048"
compressableMimeType = "text/html,text/xml,text/javascript,text/css,text/plain"
connectionTimeout = "20000"
URIEncoding = "utf-8"
acceptCount = "1000"
redirectPort = "8443"
disableUploadTimeout = "true" / >

以上就是今天的所有内容了,想了解更多有关java架构师的相关知识的话,请一直支持我们的网站吧。