tomcat启动优化
评论(0) 浏览量(3869)

1、优化linux openfile。

在catalina.sh中加入如下命令:

ulimit -s 128
ulimit -n 81920

2、系统编码设置。

在catalina.sh中加入如下命令:

export.UTF-8
export LC_ALL=zh_CN.UTF-8

3、jdk设置,如果系统中有多个jdk,可以在catalina.sh中明确指定使用哪个。

在catalina.sh中加入如下命令:

JAVA_HOME=/opt/j2sdk
export JAVA_HOME
export PATH=$JAVA_HOME/bin:$PATH

echo "JAVA_HOME:"$JAVA_HOME

4、tomcat启动参数优化~参数含义我的其他文章有介绍,还是不明白就百度一下吧。

在catalina.sh中加入如下命令:

JAVA_OPTS="$JAVA_OPTS -server -Xmx3072m -Xms1024m  -Xss256k -XX:+PrintGCDetails -Xloggc:$CATALINA_BASE/logs/tomcat_gc.log -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager  -Djava.security.egd=file:/dev/./urandom "

export JAVA_OPTS


5、出现问题,可以开启远程调试端口进行本地调试。线上环境千万不要开启这个调试端口,太危险了,这个只是临时解决方案。

在catalina.sh中加入如下命令:

#export CATALINA_OPTS="$CATALINA_OPTS -Xdebug -Xnoagent -Djava.compiler=NONE -Xrunjdwp:transport=dt_socket,server=y,suspend=n,address=8788"


6、日志输出优化,由于tomcat自带的catalina.out会持续增长,而不进行切割。

所以如果日志量较大,需要自己使用log4j或者logback进行日志输出,这里应该关闭catalina.out日志。(我们也可以用linux工具logrotate进行切割)

在catalina.sh中加入如下命令:

 # CATALINA_OUT="$CATALINA_BASE"/logs/catalina.out
 CATALINA_OUT=/dev/null


 7、tomcat请求参数优化。

 在server.xml中修改为:

   <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               URIEncoding="UTF-8"  
               minSpareThreads="25" 
               maxSpareThreads="2000"
               enableLookups="false" 
               disableUploadTimeout="true" 
               acceptCount="2000"  
               maxThreads="2000" 
               maxProcessors="2000" 
               minProcessors="5"
               useURIValidationHack="false"
               compression="on" 
               compressionMinSize="2048"
               compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"
               redirectPort="8081" />


没有登录不能评论