以下文章整理自百度文档的一篇文档,总结了一些Tomcat安装之后需要调整的一些参数。
设置catalina.bat中的JAVA_OPTS参数
在%CATALINA_HOME%\bin目录下,找到catalina.bat文件,打开它,在echo Using CATALINA_BASE: %CATALINA_BASE%之前,加上:
set JAVA_OPTS=%JAVA_OPTS% -server –Xms512m -Xmx1024m -XX:PermSize=256M -XX:MaxPermSize=512M
参数说明:
1.Xms:
TOMCAT中JVM内存最小设置参数,建议修改为512M;
2.Xmx:
TOMCAT中JVM内存最大设置参数,建议修改为1024M;
3.-XX:PermSize=256M
设置永久域(非堆内存)的初始值,默认是物理内存的1/64, 建议不要超过256M;
4.-XX:MaxPermSize=512M
设置永久域的最大值,默认是物理内存的1/4,建议修改为512M;
设置server.xml中的Connector参数
打开%CATALINA_HOME%\conf\server.xml文件,找到以下内容:
<Connector port="8088" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443"/>
修改为以下内容:
<Connector
port="8080" maxHttpHeaderSize="8192" maxThreads="500"
minSpareThreads="200" maxSpareThreads="300" enableLookups="false"
redirectPort="8443" acceptCount="200" connectionTimeout="30000"
disableUploadTimeout="true" useBodyEncodingForURI="true"
URIEncoding="GBK" />
修改说明:
1.maxThreads:
设定在监听端口的线程的最大数目,这个值也决定了服务器可以同时响应客户请求的最大数目。默认值为150,建议修改为500以上。此处我们修改为500。
2.minSpareThreads:
Tomcat初始化时创建的线程数。此处我们设置为200。
3.maxSpareThreads:
一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程。此处的值我们设置为300。
4.acceptCount:
当所有可以使用的处理请求的线程都被用光时,可以放到处理队列中的请求数,超过这个数的请求将不予处理,而返回Connection refused错误,建议修改为200;
5.connectionTimeout:
等待超时的时间数(以毫秒为单位),设置为0表示永不超时,这样设置有隐患的,建议修改为20000以上,此处我们修改为30000;
以上五个参数请根据实际条件修改。
在disableUploadTimeout="true"之后加入useBodyEncodingForURI="true" URIEncoding="GBK",以防止页面出现乱码,根据应用的实际情况来修改编码。
请同时修改:
<Connector
port="8009" enableLookups="false" redirectPort="8443"
protocol="AJP/1.3" useBodyEncodingForURI="true" URIEncoding="GBK" />
在最后加入useBodyEncodingForURI="true" URIEncoding="GBK",以防止页面出现乱码。
The HTTP Connector配置文档:
http://tomcat.apache.org/tomcat-7.0-doc/config/http.html