`
kayo
  • 浏览: 560592 次
  • 性别: Icon_minigender_1
  • 来自: 安徽
社区版块
存档分类
最新评论

Tomcat处理http请求过程

阅读更多

Tomcat处理http

假设来自客户的请求为:
http://localhost:8080/wsota/wsota_index.jsp

1) 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector获得

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

3) Engine获得请求localhost/wsota/wsota_index.jsp,匹配它所拥有的所有虚拟主机Host

4) Engine匹配到名为localhost的Host(即使匹配不到也把请求交给该Host处理,因为该Host被定义为该Engine的默认主机)

5) localhost Host获得请求/wsota/wsota_index.jsp,匹配它所拥有的所有Context

6) Host匹配到路径为/wsota的Context(如果匹配不到就把该请求交给路径名为""的Context去处理)

7) path="/wsota"的Context获得请求/wsota_index.jsp,在它的mapping table中寻找对应的servlet

8) Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类

9) 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet或doPost方法

10)Context把执行完了之后的HttpServletResponse对象返回给Host

11)Host把HttpServletResponse对象返回给Engine

12)Engine把HttpServletResponse对象返回给Connector

13)Connector把HttpServletResponse对象返回给客户browser

分享到:
评论

相关推荐

    tomcat处理一个http请求的详细过程

    tomcat中server配置文件的结构,以及处理一个http请求的全过程

    tomcat GET请求与POST请求

    在Web开发中,Tomcat作为一个流行的Java应用服务器,经常被用来托管Servlet和JSP应用程序。...理解这两者之间的差异对于任何Web开发者...通过编写Servlet并利用Tomcat提供的功能,开发者可以灵活地处理各种HTTP请求类型。

    tomcat 分配请求之——socket获取请求

    标题“Tomcat分配请求之——Socket获取请求”主要涉及的是Tomcat服务器在处理HTTP请求时的核心机制。在Web服务器中,Tomcat是一个广泛使用的开源应用服务器,它负责解析并响应来自客户端(如浏览器)的HTTP请求。这...

    Tomcat请求处理UML序列图

    - **service()**:Servlet的`service()`方法被调用,处理HTTP请求并生成响应。 ##### 4. 响应生成与返回 - **allocate()**:在生成响应之前,可能还需要进行资源分配。 - **returnservlet**:Servlet生成响应后,...

    TOMCAT原理详解及请求过程

    ### TOMCAT原理详解及请求过程 #### 一、TOMCAT概述 TOMCAT是一个开源的免费的轻量级Web应用服务器,它主要作为一个JSP/Servlet容器而被广泛使用。Tomcat支持Java Servlet和JavaServer Pages (JSP)技术,并且提供...

    S19-再看tomcat架构与请求处理流程1

    例如,`<Connector>` 元素定义了 Tomcat 如何接收和处理 HTTP 请求,包括指定端口、协议(HTTP/1.1)、连接超时时间以及重定向端口等。 Tomcat 的启动过程涉及到一系列的初始化操作。主要的启动类是 `Bootstrap#...

    Struts2在Tomcat容器中的加载过程

    Struts2是一个基于MVC(Model-View-Controller)设计模式的开源Java Web框架,它在Tomcat这样的Servlet容器中运行,提供了强大的控制层来处理HTTP请求和响应。理解Struts2在Tomcat中的加载过程有助于我们更好地进行...

    我的tomcat7源码手撕过程

    #### Tomcat处理一次请求过程分析 当客户端向Tomcat发送HTTP请求时,Tomcat会通过以下步骤处理请求: 1. **连接器接收请求**:`Connector`组件负责监听客户端请求,并将请求传递给适配器。 2. **协议适配器处理...

    模拟TOMCAT工作的全部过程

    5. **创建连接器**:TOMCAT使用监听器监听指定端口的HTTP请求,例如默认的8080端口。这些连接器负责接收并处理来自客户端的请求。 二、Servlet生命周期 1. **加载与实例化**:当TOMCAT接收到请求时,如果请求对应...

    tomcat是java的一个中间件,浏览器发出HTTP请求后经过tomcat中间件,通过tomcat返回给浏览器的实现

    本文将深入探讨Tomcat的工作原理,以及它如何处理HTTP请求,如何与服务器进行交互,以及在Java应用中的核心价值。 首先,Tomcat是一个开源的Web应用服务器,它是Apache软件基金会 Jakarta项目的一部分。作为Java ...

    tomcat 源码分析系列文档

    1. "Tomcat处理HTTP请求源码分析.doc":详细阐述了Tomcat接收到HTTP请求后,如何解析请求头、执行请求方法、构造响应的过程,包括Servlet生命周期和请求转发等。 2. "Tomcat的类载入器以及源码分析.doc":详细介绍...

    模拟tomcat的工作原理

    在这个模拟过程中,我们将深入理解Tomcat如何处理HTTP请求,以及它在Java多线程环境下的工作方式。 首先,我们要知道Tomcat的核心职责是解析HTTP请求,并将它们转发给相应的Servlet进行处理。当一个HTTP请求到达...

    Tomcat深入剖析pdf+源码(Tomcat运行原理)

    Catalina处理Servlet容器的职责,Coyote处理HTTP协议的解析,Jasper则负责JSP的编译和执行。 2. **启动流程**:Tomcat的启动过程涉及服务器配置文件的读取,如server.xml、web.xml等,这些文件定义了服务器的行为和...

    依赖瓶颈与HTTP请求异步处理.doc

    在现代Web应用程序开发中,依赖管理和HTTP请求的异步处理是至关重要的优化环节。本文主要探讨了在面临依赖瓶颈和HTTP请求延迟时,如何通过异步处理来提高系统性能和稳定性。 首先,问题的出现往往源自于HTTP请求的...

    Tomcat 接口文档 API

    3. **Connector**: 连接器组件是Tomcat接收和处理HTTP请求的部分。Tomcat通常有多个连接器,每个连接器可以配置不同的端口、协议和线程池。通过修改Connector的配置,可以优化服务器性能,例如设置最大连接数、超时...

    tomcat 与其它http服务器集成

    通过配置Nginx作为前端服务器,将HTTP请求转发到后端的Tomcat实例上。这种架构下,Nginx可以实现负载均衡、缓存静态资源等功能,减轻Tomcat的压力。 3. **负载均衡和集群**: 集成后的系统通常会涉及多个Tomcat...

    仿Tomcat的HTTP项目.zip

    通过实际操作,开发者可以了解HTTP协议的基础,以及如何使用Java实现一个服务器来处理HTTP请求和响应。同时,附带的开发文档将提供指导,使学习过程更加系统和高效。 【标签】"tomcat"进一步确认了主题,表明这个...

    how tomcat work_中文版(源码)

    1. **接收请求**:当客户端(浏览器)发送HTTP请求到服务器时,Tomcat的Acceptor线程会捕获这个连接,将其放入一个工作线程池等待处理。 2. **解析请求**:工作线程接收到请求后,会解析请求头和请求体,识别出HTTP...

    IIS与JSP整合TOMCAT

    IIS是一个流行的Windows平台Web服务器,能够处理HTTP请求并提供各种Web服务。然而,IIS默认不支持JSP,所以我们需要引入Tomcat来处理JSP页面。 描述中提到的"isapi_redirect下载",是指IIS与Tomcat整合过程中需要...

    tomcat源码解析

    Catalina是Tomcat的核心组件之一,负责处理HTTP请求。它通过一系列的层次结构来组织和管理Web应用,这些结构包括Server、Service、Engine、Host和Context。 - **Server**:代表整个Tomcat服务器实例。 - **Service*...

Global site tag (gtag.js) - Google Analytics