欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

tomcat架构

程序员文章站 2022-05-23 14:20:11
...

参考

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架构