本文涉及到的Tomcat版本为 8.0.23
1.windows下Tomcat内存设置
Windows下,在文件{tomcat_home}/bin/catalina.bat,Unix下,在文件{tomcat_home}/bin/catalina.sh的前面,增加如下设置:
JAVA_OPTS='-Xms【初始化内存大小】-Xmx【可以使用的最大内存】'
需要把这个两个参数值调大。例如:AVA_OPTS='-Xms256m-Xmx512m',表示初始化内存为256MB,可以使用的最大内存为512MB。
2.其他连接数设置
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="60000"
redirectPort="8443"
maxThreads="2000"
minSpareThreads="100"
maxSpareThreads="1000"
acceptCount="1000"
URIEncoding="GBK"
useBodyEncodingForURI="true"/>
minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10
maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75
minSpareThreads:最小空闲线程数,Tomcat初始化时创建的线程数
maxSpareThreads :做多空闲连接数,一旦创建的线程超过这个值,Tomcat就会关闭不再需要的socket线程
acceptCount:允许的最大连接数,即等待队列,指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理。应大于等于maxProcessors,默认值为100,
enableLookups:是否反查域名,取值为:true或false。为了提高处理能力,应设置为false
connectionTimeout:网络连接超时,单位:毫秒。设置为0表示永不超时,这样设置有隐患的。通常可设置为30000毫秒。
3. 输入地址直接访问项目,不带项目名 和 通过域名访问不同项目
<Host name="www.aaa.com" appBase="webapps"
unpackWARs="true"
xmlValidation="false"
xmlNamespaceAware="false">
<Context path="" docBase="dzka" reloadable="true"/>
</Host>
<Host name="www.bbb.com" appBase="webapps"
unpackWARs="true"
xmlValidation="false"
xmlNamespaceAware="false">
</Host>
4. tomcat监控,访问manager等
修改tomcat/conf/tomcat-users.xml
<role rolename="manager-gui"/> manager 和 host-manager访问权限
<role rolename="admin-gui"/> Tomcat status访问权限
<user username="admin" password="admin" roles="manager-gui,admin-gui"/> 用户密码设置
Manager App 中列出了Tomcat下所有项目,可以控制每个项目启动与停止,部署。查看项目访问中的 session等信息。
Server Status 中可以查看服务器状态,包括内存使用情况。
5. Tomcat集群
http://zyycaesar.iteye.com/blog/296606
http://blog.csdn.net/Readiay/article/details/45393435
server.xml中 cluster 标签配置
负载均衡与集群
http://www.blogjava.net/pengo/archive/2011/04/15/348331.html
用户访问apache,分发到Tomcat,Tomcat之间做集群,Tomcat集群之间同步session