Tomcat的http请求处理
- 浏览器发送url给后端默认端口为80,被在端口处监听的Connector捕获。
- Connector把捕获的请求交给它所在的Service的Engine来处理,并等待来自Engine的回应。
- Engine获得请求的url,匹配他所拥有的所有虚拟机Host。
- Host匹配到路径前缀相同的Context(如果匹配不到,就该把请求缴费路径名为""的Context去处理)
- Context获得请求url,在它的mapping table中寻找对应的servlet
- Context匹配到URL PATTERN为*.jsp的servlet,对应于JspServlet类
- 构造HttpServletRequest对象和HttpServletResponse对象,作为参数调用Servlet的doGet或doPost方法
- Context把执行完了之后的HttpServletResponse对象返回给Host
- Host把HttpServletResponse对象返回给Engine
- Engine把HttpServletResponse对象返回给Connector
- Connector把HttpServletResponse对象返回给客户浏览器
图片按我自己理解来的,仅作参考,和上边的序号不对应