Tomcat + Mysql高并发配置优化
1.Tomcat优化配置
(1)更改Tomcat的catalina.bat
将java变成server模式,增大jvm的内存,在文件开始位置增加
setJAVA_OPTS=-server -Xms1024m -Xmx2048m -Xss512K -XX:PermSize=128m-XX:MaxPermSize=256m
setCATALINA_OPTS=-server -Xms512m -Xmx512m
如下图:
Xms:初始内存
Xmx:最大内存
(3)更改Tomcat的Server.xml
在 <Service name="Catalina">中 增加如下配置(亲测10秒内2000并发没问题)。
<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"
maxThreads="800"minSpareThreads="25" maxIdleTime="60000"/>
<Connector executor="tomcatThreadPool"
port="80" protocol="HTTP/1.1"
connectionTimeout="60000"
keepAliveTimeout="15"
maxKeepAliveRequests="200"
disableUploadTimeout="false"
enableLookups="false"
redirectPort="8443"/>
注意maxThreads数不应调整过大,容易产生如下错误:
2,Mysql优化配置
(1)更改MySql的my.ini(windows)或者my.cnf(linux)
max_connections=12000//最大连接数 一般在0~15000之间,尽量不要超过15000
max_user_connections=0//最大用户连接数,0为不限制
interactive_timeout=31536000//超时时间,设置为一年,避免连接池出现下图错误
wait_timeout=31536000
query_cache_size=512m //查询缓存,尽量设置大一些,避免出现下图错误
key_buffer_size=1024m
query_cache_type= 1
max_allowed_packet=600m