文章目录
1. 修改启动端口
在conf/server.xml
中配置:
Tomcat默认端口为8080,可以在配置文件中重新设置启动端口:
<Connector connectionTimeout="20000"
port="8080" protocol="HTTP/1.1"
redirectPort="8443"/>
2. 将应用部署到Tomcat根目录的方法
将应用部署到Tomcat根目录的目的是可以通过“http://[ip]:[port]”直接访问应用,而不是使用“http://[ip]:[port]/[appName]”上下文路径进行访问。
方法:删除原 webapps/ROOT 目录下的所有文件,将应用下的所有文件和文件夹复制到ROOT文件夹下。
3. 配置连接数器
调整tomcat/conf/server.xml
的connector
标签中关于连接器的配置可以提升应用服务器的性能。
参数 | 说明 |
---|---|
connectionTimeout | 网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。默认可设置为20000毫秒 |
minSpareThreads | Tomcat初始化时创建的线程数 |
maxConnections | 最大连接数,当到达该值后,服务器接收但不会处理更多的请求,额外的请求将会阻塞直到连接数低于maxConnections。可通过ulinit -a 查看服务器限制,对于CPU要求更高(计算型)时,建议不要配置过大;对于CPU要求不是特别高时,建议配置在2000左右,当然这个需要服务器的支持 |
maxThreads | 最大线程数,需要根据服务器的硬件情况,进行一个合理的配置 |
acceptCount | 最大排队等待数,当服务器接收的请求数量到达maxConnections,此时Tomcat会将后面的请求存放在任务队列中进行排序。acceptCount指的就是任务队列中排队等待的请求数。一台Tomcat的最大的请求处理数量,是maxConnections+acceptCount |
例如:
<Connector executor="tomcatThreadPool"
port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
maxConnections="2000"
maxThreads="500"
acceptCount="200"
/>
4. 配置403,404,500,异常页面
默认情况下,报出HTTP错误的时候会暴露tomcat版本号。如果不想暴露的话,就需要重新定义错误跳转页面。修改 tomcat 的配置文件,当页面发生错误时跳转到指定的页面,在 conf/web.xml
文件中添加如下内容:
<error-page>
<error-code>401</error-code>
<location>/401.jsp</location>
</error-page>
<error-page>
<error-code>404</error-code>
<location>/404.jsp</location>
</error-page>
<error-page>
<error-code>500</error-code>
<location>/500.jsp</location>
</error-page>
<!-- java.lang.Exception异常错误,依据这个标记可定义多个类似错误提示 -->
<error-page>
<exception-type>java.lang.Exception</exception-type>
<location>/error.html</location>
</error-page>
<!-- java.lang.NullPointerException异常错误,依据这个标记可定义多个类似错误提示 -->
<error-page>
<exception-type>java.lang.NullPointerException</exception-type>
<location>/error.html</location>
</error-page>
5. 配置Session过期时间
在 conf/web.xml
文件中,有如下默认值:
<session-config>
<session-timeout>30</session-timeout>
</session-config>
6. Tomcat涉及的JVM参数调优
Tomcat是一款Java应用,所以JVM的配置与其运行性能密切相关,而JVM优化的重点则集中在内存分配和GC策略的调整上,因为你内存会直接影响服务的运行效率和吞吐量,JVM垃圾机制会不同程度的导致程序运行中断,可以根据应用程序的特点,选择不同的垃圾回收策略,调整JVM垃圾回收策略,可以极大减少垃圾回收次数,改善程序性能。
Windows平台(bin/catalina.bat):
set JAVA_OPTS=-server -Xms2048m -Xmx2048m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:SurvivorRatio=8
Linux平台(bin/catalina.sh):
JAVA_OPTS="-server -Xms2048m -Xmx2048m -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=256m -XX:SurvivorRatio=8"
JVM的参数及其调优文章链接:JVM参数及调优