tomcat 目录结构及含义

先来介绍下tomcat 的目录文件

bin 目录:linux、windows的一些启动脚本,还有一些就是tomcat依赖的jar包,.sh是linux .bat是windows 。

conf目录:这里就是配置文件的地方了,这里面我们可以看到一些熟悉的文件,比如context.xml、server.xml、web.xml文件。

lib目录:tomcat依赖的一些jar

logs : 这个就肯定不用说了,存放日志的地方

temp: 存放一些临时文件

webapps: 这个我们就很熟悉,部署的时候 war、jar 放在里面就可以了启动就可以了。

work:这个是存运行时放编译后的class文件。

介绍完了目录结构,我们可以来看看官方文档
8.0文档地址传送门

server:这个没什么说的,tomcat服务器接口的实现,代表整个容器

Service: 服务器内部的中间组件,把多个引擎绑定在一起。

Engine: 上面提到的引擎,处理所有连接器所有的请求的管道,并且返回信息给客户端。

Host:就是我们常用域名或者服务器的ip地址与tomcat相关联,一个Engine(引擎) 包含多个Host。

Connector:这个就是客户端连接池,将tomcat连接到Apache HTTPD服务器等web服务器时使用的AJP协议的连接器。

Context:这个就是我们web项目。


说完这些还是懵逼,这些东西到底是做什么的呢?

下面我找了张图,我们结合图来说


tomcat系统结构图.png
我们可以看到,一个请求从客户端过来,首先tomcat容器肯定是要先初始化,
也就 是Server 初始化,然后就是Server的一些Listener、Resource、JNDI然后在          
就Server下面的Service,Service里面的Connector。
看完上面的图我们也只是知道了tomcat 处理请求的一些流程而已,图中的一些组 
件我们并不知道在哪里,还是有点懵,我们回过头去看看 各个目录里面的文件 

(下面只研究conf目录)

conf目录解释

image.png

我们看到这个里面对应的是上面图中的一些组件,可是service、connetor、
Engine、Host、Executor 这些组件我们还是没有看到,再仔细看下这些组件都是包含在Server 里面的,我, 看下erver.xml的文件



上面图片中的注释我去掉了。可以看到这个里面的标签结构,图中的组件是不是都对应上了。
这个里提一下 这个web.xml文件时tomcat 默认的。
我们再看看 context.xml目录


image.png

这个里面就是最后的conttext 组件。
结合图片里的组件我们都了解完了,后面我们就去结合源码研究下tomcat 的启动流程

你可能感兴趣的:(tomcat 目录结构及含义)