-
Notifications
You must be signed in to change notification settings - Fork 1.1k
部署到Ubuntu的性能优化事项
下面以Ubuntu操作系统来说明,其他操作系统类似,主要注意有关路径问题。
1、设置MySQL最大连接数。
vi /etc/mysql/my.cnf
max_connections = 1000
service mysql restart
2、设置Tomcat线程数。
vi TOMCAT_HOME/conf/server.xml
<Connector port="80" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="443"
URIEncoding="UTF-8"
maxThreads="1000"
minSpareThreads="100"
maxSpareThreads="500"
acceptCount="1500"
enableLookups="false"/>
3、设置Tomcat JVM参数。
vi TOMCAT_HOME/bin/catalina.sh
JAVA_OPTS='-XX:-UseSplitVerifier -server -Xmx10000m -Xms5000m -Xmn256m -XX:+UseParNewGC -XX:+UseConcMarkSweepGC -XX:CMSInitiatingOccupancyFraction=70'
4、设置DBCP连接池参数。
编辑APDPlat_Web/src/main/resources/db.local.properties,加入:
pool.initialSize=100
pool.maxActive=1000
pool.maxIdle=1000
pool.minIdle=100
pool.maxWait=-1
5、默认启用了服务端缓存(EhCache)。
编辑APDPlat_Web/src/main/resources/ehcache.xml,指定diskStore路径和其他参数。
6、默认禁用了浏览器缓存,启用之。
编辑APDPlat_Web/src/main/webapp/WEB-INF/web.xml,取消注释过滤器ResponseHeaderFilter。
编辑APDPlat_Web/src/main/resources/struts.xml,将struts.devMode设置为false,将struts.serve.static.browserCache设置为true。
7、混淆JAVA代码以及混淆压缩JS和CSS
在APDPlat_Web项目的pom.xml文件中找到maven-antrun-plugin插件,取消注释。
在每一个项目的pom.xml文件中找到yuicompressor-maven-plugin插件,取消注释。找到maven-compiler-plugin,将属性debug设置为false。
在APDPlat目录下重新执行mvn install,构建成功后使用APDPlat_Web项目的target目录下的APDPlat_Web-2.2文件夹里面的内容来部署到Tomcat,而不是APDPlat_Web-2.2.war。
8、日志设置。
编辑APDPlat_Web/src/main/resources/logback.xml
指定日志保存路径(File和FileNamePattern),注释<appender-ref ref="stdout"/>,取消注释<appender-ref ref="logfile"/>。