全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

Tomcat一个请求的处理流程?

发布时间:2022-09-19 11:37:46
发布人:wjy

  假设来自客户的请求为:http://localhost:8080/test/index.jsp 请求被发送到本机端口8080,被在那里侦听的Coyote HTTP/1.1 Connector,然后

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

  2、Engine获得请求localhost:8080/test/index.jsp,匹配它所有虚拟主机Host

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

  4、localhost Host获得请求/test/index.jsp,匹配它所拥有的所有Context

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

Tomcat一个请求的处理流程

  6、path="/test"的Context获得请求/index.jsp,在它的mapping table中寻找对应的servlet

  7、Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类,构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用JspServlet的doGet或doPost方法

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

  9、Host把HttpServletResponse对象返回给Engine

  10、Engine把HttpServletResponse对象返回给Connector

  11、Connector把HttpServletResponse对象返回给客户browser

相关文章

聚类学习、自动编码器、生成模型、PredNet的区别是什么?

聚类学习、自动编码器、生成模型、PredNet的区别是什么?

2023-10-15
Visual Studio Online和GitHub有什么区别?

Visual Studio Online和GitHub有什么区别?

2023-10-15
计算机视觉中所指的深度和深度学习中的深度有什么区别?

计算机视觉中所指的深度和深度学习中的深度有什么区别?

2023-10-15
显著性目标检测和一般目标检测最本质的区别是什么区别?

显著性目标检测和一般目标检测最本质的区别是什么区别?

2023-10-15

最新文章

常见网络安全面试题:Windows常用的命令有哪些?

常见网络安全面试题:Windows常用的命令有哪些?

2023-10-09
常见网络安全面试题:根据设备告警如何展开排查?

常见网络安全面试题:根据设备告警如何展开排查?

2023-10-09
常见网络安全面试题:mysql加固呢?(数据库加固)

常见网络安全面试题:mysql加固呢?(数据库加固)

2023-10-09
常见网络安全面试题:windows和linux加固?(操作系统加固)

常见网络安全面试题:windows和linux加固?(操作系统加固)

2023-10-09
在线咨询 免费试学 教程领取