tomcat架构
目录结构
1.conf目录
catalina.policy:Tomcat安全策略文件,控制JVM相关权限,具体可以参考java.security.Permission
catalina.properties:Tomcat Catalina行为控制配置文件,比如Common CalssLoader
logging.properties:Tomcat日志配置文件,jdk Logging
server.xml: Tomcat Server配置文件
- GlobalNamingResources:全局JNDI资源
context.xml:全局Context配置文件
tomcat-users.xml:Tomcat角色配置文件,=(Realm文件实现方式)
web.xml:Servlet标准的web.xml部署文件,Tomcat默认实现部分部署入内:
-org.apache.catalina.servlets.DefaultServlet eTag
-org.apache.jasper.servlet.JspServlet
2.lib目录
Tomcat存放公共类库
ecj-*.jar :Eclipse Java编译器
jasper.jar :JSP编译器
3.logs
localhost.${date}.log :当Tomcat引用起不来的时候,多看该文件,比如:类冲突
-NoClassDefFoundError
-ClassNotFoundException
catalina.${date}.log:控制台输出,Sysystem.out外置
4.webapps
简化web应用部署的方式
部署Web应用
1.修改server.xml
<Context docBase="E:/..." path="/" reloadable="true" />
改方式不支持动态部署,建议考虑在生产环境使用
2.独立Context.xml
独立context XML 配置文件路径:conf/Catalina/localhost/${ContextPath}.xml
conf/${Engine.name}/${host.name}/ROOT.xml
配置了这个独立文件后
path是无效的,所以这个xml里应该是
<?xml version="1.0" encoding="UTF-8"?>
<Context docBase="E:/..." reloadable="true" />
注意:该方式支持热部署,建议在开发环境使用
嵌入式tomcat
tomcat7 是servlet3.0的实现
tomcat8是servlet3.1的实现
NIO不一定能提高性能,比如请求数据量大,NIO性能比BIO还差
NIO多读、写,同步的
略。。。。。。。。。。。。。。。
上一篇: Tomcat 架构
下一篇: Android使用WebView定位问题