tomcat性能优化(JAVA_OPTS)
1,outofmemoryError对应:
在tomcat/bin目录下,找到max_mem.sh文件(如果没有则找etenv.sh),修改Xmx和Xms配置,如下:
#!/bin/sh
export JAVA_OPTS="-Xmx1024m -Xms512m"
2,启动tomcat线程池:
在tomcat/conf目录下,找到server.xml文件,配置如下:
<!--The connectors can use a shared executor, you can define one or more named thread pools-->
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-app-"
maxThreads="300" maxIdleTime="300000" minSpareThreads="10"/>
<!-- A "Connector" represents an endpoint by which requests are received
and responses are returned. Documentation at :
Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
Java AJP Connector: /docs/config/ajp.html
APR (HTTP/AJP) Connector: /docs/apr.html
Define a non-SSL HTTP/1.1 Connector on port 8080
-->
<!-- <Connector port="8943" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" address="127.0.0.1" /> -->
<!-- A "Connector" using the shared thread pool-->
<Connector executor="tomcatThreadPool"
port="8943" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443"
minProcessors="2"
maxProcessors="50"
acceptCount="1000"/>
各种含义自己百度,就不一一叙述了。
另外,如果发现tomcat的内存一直在增加,不会减少,肯定是自己写的代码有内存没有释放的地方,特别是调用第三方服务的地方。