Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是不少的场合下被广泛使用,是开发和调试JSP 程序的首选。java
是目前的开发焦点。它在汲取了Tomcat 6.0.x优势的基础上,实现了对于Servlet 3.0、JSP 2.2和EL 2.2等特性的支持。除此之外的改进列表以下:linux
· Web应用内存溢出侦测和预防web
· 加强了管理程序和服务器管理程序的安全性shell
· 通常 CSRF保护tomcat
· 支持web应用中的外部内容的直接引用安全
· 重构 (connectors, lifecycle)及不少核心代码的全面梳理服务器
1. 配置方法并发
启动内存参数的配置app
tomcat/bin/catalina.bat 若是是linux 就是 catalina.shwebapp
在rem 的后面增长以下参数
set JAVA_OPTS= -Xms256m -Xmx256m -XX:MaxPermSize=64m
修改Tomcat的JDK目录
打开tomcat/bin/catalina.bat
在最后一个rem后面增长
set JAVA_HOME=C:\Program Files\Java\jdk1.8.0
增长虚拟目录
/tomcat/conf/server.xml
第一行是之前默认存在的,第二行是新增的
<Context path="" docBase="ROOT" debug="0" reloadable="true"></Context>
<Context path="/jsp/a" reloadable="true" docBase="E:\workplace\www.java2000. net\WebContent" />
使用默认配置的tomcat,另外虚拟目录也可这设置:
<Context path="/test" docBase="webContent" reloadable="true"/>
由于默认状况下,tomcat启动过程当中配置虚拟目录的时候会从 webapps目录下查找webContent应用。
这样配置好了,即便之后从一台服务器移植到另外一台服务器,不作任何修改也能运行起来。
GET方式URL乱码问题解决
打开 tomcat/conf/server.xml
查找下面这部分,在最后增长一段代码就能够了。
<Connector port="80" maxHttpHeaderSize="8192"
.................
URIEncoding="UTF-8" useBodyEncodingForURI="true"
...............
/>
其中的UTF-8 请根据你的须要本身修改,好比GBK
虚拟主机配置文件
tomcat/conf/server.xml
<!-- 默认的主机 -->
<Host name="localhost" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="ROOT" debug="0" reloadable="true"></Context>
...
</host>
<!-- 如下是新增的虚拟主机 -->
<Host name="" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="d:\" debug="0" reloadable="true"></Context>
<!-- 虚拟目录 -->
<Context path="/count" docBase="d:\counter.java2000. net" debug="0" reloadable="true"></Context>
</Host>
<Host name="java2000. net" appBase="webapps"
unpackWARs="true" autoDeploy="true"
xmlValidation="false" xmlNamespaceAware="false">
<Context path="" docBase="d:\ " debug="0" reloadable="true"></Context>
<Context path="/count" docBase="d:\counter.java2000. net" debug="0" reloadable="true"></Context>
</Host>
2. Tomcat优化
思路:
首先要掌握未优化以前,服务器性能现状;
设置虚拟机内存,性能提高明显;
设置tomcat运行模式略微有提升;
设置tomcat线程池,通常设置的比较大以避免成为瓶颈;
逐步递增的性能调试计划,从较少请求数,较低并发开始逐步递增。直到性能明显降低位置;
以吞吐率、并发、响应时间等为关键性能指标;
区分裸奔性能和分布式调用的性能;
尽可能覆盖所有代码运行,服务启动要为性能测试作特殊处理(callId,timeStamp);
作AB压力测试,能够编写个shell夜间运行并将结果重定向;
实现:
(1)屏蔽AJP
(2)启用NIO或者APR模式运行
(3)调整nio的线程池
(4)调整内存
(5)启用APR
(6)调整线程池