Tomcat Connector原理

Tomcat工作原理

要了解其中的工作原理我们首先看如下两个图

Tomcat基本架构图:

 

 

 

 

 

Tomcat请求示意图:

 

 

 

 

客户端的请求通过Connector接受处理后在到容器Engine->Host->Conetxt->进一步处理。

 

因此我们知道Tomcat的核心类就是Connector 了。

 

 

 

 

初始化Connector时,Tomcat 默认使用的是HttpNioProtocol 处理客户端发送的请求。该类下有主要类用于接受处理请求。

 

NioEndpoint

  这个类主要用户Socket连接的处理,客户端发送的请求均是通过Socket请求来处理的。

 

 

Http11Processor

socket请求转换包装成RequetResponse,待容器处理完请求后再返回。

 

 

CoyteAdapter

将包装好的Request Response 转交给容器处理,最终会调用我们的Servlet Pipeline->valve

 

 

Connector 调用流程图:

 

 

 

 

 

CoyteAdapter开始逐个调用ContainerContainer是由管道的概念来逐个调用处理请求,最终调用用户的Servlet

 

 

 

 

 

 

参考:

http://tomcat.apache.org/tomcat-9.0-doc/architecture/requestProcess/request-process.png

posted on 2018-12-11 17:32  blackforest  阅读(800)  评论(0编辑  收藏  举报

导航