Tomcat Servlet 容器 Catalina-简介

17 篇文章 0 订阅
Tomcat Servlet 容器 Catalina

Tomcat是⼀个由⼀系列可配置(conf/server.xml)的组件构成的Web容器,⽽Catalina是Tomcat的
servlet容器
从另⼀个⻆度来说, Tomcat 本质上就是⼀款 Servlet 容器, 因为 Catalina 才是 Tomcat 的核⼼ , 其
他模块都是为Catalina 提供⽀撑的。 ⽐如 : 通过 Coyote 模块提供链接通信, Jasper 模块提供 JSP 引
擎, Naming 提供JNDI 服务, Juli 提供⽇志服务。

在这里插入图片描述

Servlet 容器 Catalina 的结构

Tomcat/Catalina实例

在这里插入图片描述

其实,可以认为整个Tomcat就是⼀个Catalina实例, Tomcat 启动的时候会初始化这个实例, Catalina
实例通过加载server.xml完成其他实例的创建,创建并管理⼀个Server, Server创建并管理多个服务,
每个服务⼜可以有多个Connector和⼀个Container

  • ⼀个Catalina实例(容器)

  • ⼀个 Server实例(容器)

  • 多个Service实例(容器)

  • 每⼀个Service实例下可以有多个Connector实例和⼀个Container实例

  • Catalina 负责解析Tomcat的配置⽂件(server.xml) , 以此来创建服务器Server组件并进⾏管理

  • Server 服务器表示整个Catalina Servlet容器以及其它组件,负责组装并启动Servlaet引擎,Tomcat连接
    器。 Server通过实现Lifecycle接⼝,提供了⼀种优雅的启动和关闭整个系统的⽅式

  • Service 服务是Server内部的组件,⼀个Server包含多个Service。它将若⼲个Connector组件绑定到⼀个Container

  • Container 容器,负责处理⽤户的servlet请求,并返回对象给web⽤户的模块

Container 具体结构

Container组件下有⼏种具体的组件,分别是Engine、 Host、 Context和Wrapper。这4种组件(容器)
是⽗⼦关系。 Tomcat通过⼀种分层的架构,使得Servlet容器具有很好的灵活性

  • Engine 表示整个Catalina的Servlet引擎,⽤来管理多个虚拟站点,⼀个Service最多只能有⼀个Engine,但是⼀个引擎可包含多个Host
  • Host 代表⼀个虚拟主机,或者说⼀个站点,可以给Tomcat配置多个虚拟主机地址,⽽⼀个虚拟主机下
    可包含多个Context
  • Context 表示⼀个Web应⽤程序, ⼀个Web应⽤可包含多个Wrapper
  • Wrapper 表示⼀个Servlet, Wrapper 作为容器中的最底层,不能包含⼦容器
    配置其实就体现在conf/server.xml中
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值