Tomcat整体架构设计-

Tomcat整体架构设计


作者|知视


本文主要介绍Tomcat的整体架构


说到Tomcat大家肯定不陌生,今天我们来聊聊Tomcat,聊聊Tomcat的架构设计。

Tomcat的架构设计,就像俄罗斯套娃一样,一层套一层。如图,就是tomcat整体架构图。


Tomcat整体架构设计

Tomcat架构设计图


Tomcat主要有两部分组成:连接器Connector和容器Container

所谓连接器就是负责接收和解析请求,然后转发给容器

容器代表的是一类组件,它有很多层。

其中最大的是引擎Engine,它代表一个Servlet引擎。它主要的功能是将传入的请求委托给适当的虚拟机Host处理。

引擎Engine的下一层是Host,它代表一个虚拟机。Tomcat自带一个localhost的虚拟机。虚拟机有两个重要的概念域名根目录

为了提供对多个域名的服务,通过配置Host就可以添加虚拟机。每个虚拟机Host下可以包含多个上下文Context。

虚拟机Host的下一层是上下文Context,一个Context代表一个Web应用,就是我们平常开发的一套Web应用程序。上下文是应用自定义代码(servlet、jsp)所存活的地方。

其实,在Context内部还有一层包装器Wrapper,包装器是context容器的子容器。一个Wrapper对应一个Servlet。在一个Web应用中会包含多个Servlet,来处理不同的请求。所以一个Context内部会有多个对应的包装器Wrapper。

为了很好地统一管理连接器和容器,Tomcat提供了另外两个组件:服务器Server服务Service

服务器Server代表完整的Tomcat实例,在Java虚拟机中它是一个单实例,主要是用来管理各个服务Service组件的生命周期的。服务器Server中可以有多个服务Service,每个服务Service都是相互独立的。

服务器Server是Tomcat中的顶级组件。可以这样说,它掌握着整个Tomcat的生死大权。

前面说到,Server代表Tomcat实例本身。那么,Service则代表具体的服务,负责对外提供服务。每个Service都是相互独立的,一个Service组件中可以有多个Connector和一个Engine,这样一来,对应的多个Connector的请求就只能由一个Engine处理。

那么,请求是如何到达Servlet的?

Tomcat整体架构设计

Tomcat结构图

展开阅读全文

页面更新:2024-03-28

标签:架构   上下文   根目录   连接器   容器   组件   虚拟机   代表   服务器   域名

1 2 3 4 5

上滑加载更多 ↓
推荐阅读:
友情链接:
更多:

本站资料均由网友自行发布提供,仅用于学习交流。如有版权问题,请与我联系,QQ:4156828  

© CopyRight 2008-2024 All Rights Reserved. Powered By bs178.com 闽ICP备11008920号-3
闽公网安备35020302034844号

Top