美文网首页
Tomcat工作原理解析

Tomcat工作原理解析

作者: Loading灬 | 来源:发表于2019-07-08 15:50 被阅读0次

Tomcat请求过程:

Tomcat请求过程

1.用户点击网页内容,请求被发送到本机端口8080,被在那里监听的Coyote HTTP/1.1 Connector获得。

2.Connector把该请求交给它所在的Service的Engine来处理,并等待Engine的回应。

3.Engine获得请求,匹配所有的虚拟主机Host。

4.Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机),Host获得请求,匹配它所拥有的所有的Context。Host匹配到对应请求路径的Context(如果匹配不到就把该请求交给路径名为“ ”的Context去处理)。

5.匹配的Context获得请求,在它的mapping table中寻找出对应的Servlet。

6.构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用Servlet的doGet()或doPost(),执行业务逻辑、数据存储等程序。

7.Context把执行完之后的HttpServletResponse对象返回给Host。

8.Host把HttpServletResponse对象返回给Engine。

9.Engine把HttpServletResponse对象返回Connector。

10.Connector把HttpServletResponse对象返回给客户Browser。


自己实现Tomcat的思路:

1.创建一个ServerSocket类,作为服务端监听器,等待客户端连接的到来,创建Socket来传输TCP/UDP报文。

2.封装请求报文和返回报文。

3.根据请求路径进行请求的分发。

代码实现:

1.Tomcat帮我们实现了关于Http相关的Request和Response,这里自己进行封装。

封装Request 封装Response

2.封装Servlet,以及相关配置、工具

Servlet 基础父类

这里可以多些几个子类,访问不同的地址的时候,由不同的Servlet处理

Servlet子类 配置分发路劲

不同的请求路径,根据ServletMapping中的配置,自己匹配对应的Servlet

Servlet工具

相关测试 : 

根据结果来看,已经完成了请求的分发,以及处理。收工!

程序入口 测试结果

相关文章

  • Tomcat工作原理解析

    本文主要讲解Tomcat启动和部署webapp时的原理和过程,以及其使用的配置文件的详解。主要有三大部分: 1.T...

  • Tomcat工作原理解析

    Tomcat请求过程: 1.用户点击网页内容,请求被发送到本机端口8080,被在那里监听的Coyote HTTP/...

  • Tomcat 怎么停止服务的?

    通过分析 Tomcat catalina.bat 原理解析时,发现启动tomcat和关闭tomcat都是调用 MA...

  • Java 使用 endorsed 覆盖jdk提供的类

    在分析 Tomcat catalina.bat 原理解析时候,我们发现在启动tomcat的参数中存在 -Djava...

  • Tomcat 架构原理解析到架构设计借鉴

    Tomcat 架构原理解析到架构设计借鉴 Tomcat 发展这么多年,已经比较成熟稳定。在如今『追新求快』的时代,...

  • tomcat 工作原理

    转自 本文以 Tomcat 5 为基础,也兼顾最新的 Tomcat 6 和 Tomcat 4。Tomcat 的基本...

  • tomcat 工作原理

    以下是servlet的作用 Servlet的调用 Tomcat的工作模式3种:独立Servlet,进程内servl...

  • Tomcat工作原理

    Servlet 容器“Container”Container 是容器的父接口,所有子容器都必须实现这个接口,Con...

  • Tomcat

    Apache-Tomcat 关系 web服务器工作原理 Tomcat Web 3大件 Tomcat 处理 http...

  • 使用Logrotate分隔Tomcat工作日志

      本文不涉及Tomcat访问日志,仅对Tomcat工作日志进行了分隔,原理相同。Tomcat工作日志配置文件为t...

网友评论

      本文标题:Tomcat工作原理解析

      本文链接:https://www.haomeiwen.com/subject/gubohctx.html