`
douglas_lhs
  • 浏览: 38604 次
  • 性别: Icon_minigender_1
  • 来自: 上海
最近访客 更多访客>>
社区版块
存档分类
最新评论

tomcat 接受请求顺序

阅读更多
来自客户的请求为:
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

分享到:
评论

相关推荐

    关于\"form表单提交数据编码方式和tomcat接受数据解码方式的思考\"一文的纠错

    本文将纠正“关于'form表单提交数据编码方式和tomcat接受数据解码方式的思考'”一文中可能存在的错误,并深入探讨相关知识点。 首先,表单数据的编码方式主要取决于`<form>`标签的`enctype`属性。默认情况下,如果...

    tomcat 源码分析系列文档

    5. "tomcat加载类的顺序.doc":详细说明了Tomcat加载类的具体步骤和顺序,这对于理解和调试类加载问题至关重要。 6. "Tomcat源码研究.pdf":提供了一个全面的源码分析概览,可能包括了Tomcat的主要组件、设计模式...

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

    本文将深入探讨 Tomcat 的架构和请求处理流程。 首先,Tomcat 作为一个 HTTP 服务器,其核心功能之一是通过 Socket 进行网络通信,遵循 TCP/IP 协议。Socket 提供了应用程序之间进行低级别网络通信的接口,使得 ...

    Tomcat源码apache-tomcat-8.5.47-src.zip

    7. ** valves**:Valves是Tomcat处理请求的管道中的组件,它们按照一定的顺序处理每个请求。开发者可以通过自定义Valve来插入特定的行为。 8. ** Manager**:用于管理Web应用程序的生命周期,如部署、卸载和更新。`...

    TOMCAT源码分析(启动框架)

    6. **启动Connector**:Connector开始接受并处理请求。请求被分发到对应的Engine,然后依次经过Host和Context,最终到达Wrapper,执行Servlet的`service()`方法。 7. **处理请求**:Wrapper根据请求类型选择合适的...

    tomcat的内部原理

    此外,每个Web App有自己的部署配置文件web.xml,用于定义Servlet和Servlet映射,加载顺序为先加载全局$CATALINA_HOME/conf/web.xml,再加载应用级$WEBAPP_HOME/WEB-INF/web.xml。 了解这些核心概念后,我们可以更...

    tomcat 学习与分析总结资料

    理解Tomcat的工作流程,包括请求的接收、解析、调度、处理及响应过程,有助于我们解决性能瓶颈和调试问题。 3. **Server结构分析** 在Tomcat的配置文件`server.xml`中,`Server`元素是最顶级的容器,包含多个`...

    tomcat-4.1.40-src

    7. **扩展性**:Tomcat 4.1.40设计时就已经考虑了插件式架构,可以通过编写自定义Valves(管道组件)来扩展其功能,Valves可以按顺序处理请求和响应。 通过研究Tomcat 4.1.40的源码,开发者可以了解到Web服务器的...

    tomcat-7.0.56 接口说明文档

    Tomcat会按照特定顺序启动和停止Servlet,以及初始化和销毁相关的资源。开发者可以通过实现`javax.servlet.ServletContextListener`来监听这些生命周期事件,以便在启动时进行初始化操作,关闭时进行清理工作。 ...

    nginx+tomcat负载均衡实现

    1. **轮询(round-robin)**:每个请求按顺序分配给不同的服务器,如果服务器队列循环一圈,则重新开始。这是最基础的策略。 2. **权重轮询(weighted round-robin)**:根据服务器的处理能力分配不同的权重,能力...

    Tomcat帮助文档全集

    此外,对于使用Tomcat进行JSP和Servlet开发的人员,这份文档会解释如何创建动态网页,如何处理HTTP请求和响应,以及如何利用EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)来简化开发。...

    《深入剖析Tomcat》的光盘源码

    4. **Pipeline与Valve**:Pipeline是Tomcat中处理请求的链式结构,而Valve则是链上的一个个处理节点。每个Valve执行特定的任务,如认证、日志记录、会话管理等。通过Valve,我们可以自定义处理流程。 5. **Context...

    apache-tomcat-9.0.34-src.zip

    7. **common`, `server`, `shared`:这些是类库目录,分别对应于Tomcat的全局、服务器特定和共享类库,允许自定义配置加载顺序。 8. **build**:构建相关的文件和脚本,如Ant构建脚本,用于编译和打包Tomcat。 9. **...

    Tomcat中用web.xml控制Web应用详解

    Tomcat 中 web.xml 文件是 Web 应用的核心配置文件,负责管理 Web 应用的生命周期、Servlet 的加载顺序、Filter 的配置等。下面对 web.xml 文件中的重要元素进行详细解释。 context-param 元素 context-param 元素...

    tomcat engine,host,context的管道处理——pipeline

    Engine是Tomcat容器的顶级组件,负责处理所有到达该Tomcat实例的请求。一个Engine可以包含多个Host,每个Host对应一个域名或者IP地址。Engine会根据请求的主机头(Host header)来决定将请求转发给哪个Host处理。 ...

    Tomcat组成及工作原理借鉴.pdf

    类加载的顺序为: 1. /Web-INF/classes 2. /Web-INF/lib/*.jar 3. Bootstrap 4. System 5. $CATALINA_HOME/common/classes 6. $CATALINA_HOME/common/endores/*.jar 7. $CATALINA_HOME/common/lib/*.jar 8. $...

    tomcat

    `conf/server.xml`中的`<Valve>`元素可以用来定制请求处理流程,例如添加访问日志记录。 7. **安全管理**:Tomcat的安全配置主要涉及`conf/server.xml`中的`<Realm>`和`<User>`元素,用于设置用户权限和认证机制。...

    Tomcat7 源码Eclipse工程

    Tomcat7源码还涉及到了类加载机制,它采用了自定义的类加载器,如`CatalinaClassLoader`和`SharedClassLoader`,理解这些类加载器的工作方式有助于解决类冲突和加载顺序问题。 此外,Tomcat的安全管理也是重要一环...

    Tomcat(二) Tomcat实现:Servlet与web.xml介绍 以及 源码分析Tomcat实现细节1

    当请求匹配到过滤器映射时,Tomcat会创建一个过滤器链,并按顺序调用每个过滤器的`doFilter()`方法。过滤器可以决定是否继续调用下一个过滤器,或者直接处理请求。 ```xml <filter-name>...

    how tomcat works——(5)容器

    《Tomcat工作原理详解——(5)容器》 在深入探讨Tomcat的工作原理时,我们不得不提到一个核心概念——容器。Tomcat作为一个流行的开源Java Servlet容器,它的内部架构设计是理解其高效运行的关键。本篇将详细介绍...

Global site tag (gtag.js) - Google Analytics