05-Web服务器

nobility 发布于 2021-08-07 1209 次阅读


Web服务器

资源请求

  • 静态资源:不因请求的不同而变化,服务器可通过资源路径来获取的资源,比如图片资源、HTML等
  • 动态资源:会随着请求的不同而变化,服务器可通过容器来获取的资源,比如Servlet生成的资源

Tomcat结构

Tomcat结构

Server:最顶层组件,负责运行Tomcat服务器,和加载服务器资源和环境变量,一个Server可包含多个Service

Service:集合Connector和Container的抽象组件,一个Service可包含多个Connector和一个Container

Connector:基于不同协议的不同实现,负责接收解析请求和返回响应,仅提供简单的协议解析和创建Socket的创建

Processor:负责对Connector接收到的请求进一步的派遣到不同的Container

Container:具体处理请求的抽象组件,一个Container只包含一个Engine

Engine:是Container的最顶层组件,解析请求并进一步的派遣给不同的Host,一个Engine可包含多个Host

Host:是虚拟主机,一个Host对应一个服务器IP地址,对应一个webapps目录

Context:一个Context对应一个Web Application,也是最复杂的组件,负责应用资源管理、应用类加载、Servlet管理、安全管理等,对应一个webapps下的一个项目目录或者说对应一个WEB-INF目录以及下面的web.xml文件

Wrapper:是Container最底层的组件,封装着Servlet实例,负责管理Servlet实例的生命周期

此作者没有提供个人介绍
最后更新于 2021-08-07