Tomcat连接器 Connector

连接器主要功能

  • 网络通信
  • 应用层协议解析
  • Tomcat Request/Response 与 ServletRequest/ServletResponse 的转化

Tomcat 的设计者设计了 3 个组件来实现这 3 个功能,分别是 Endpoint、Processor 和 Adapter。Endpoint 负责提供字节流给 Processor,Processor 负责提供 Tomcat Request 对象给 Adapter,Adapter 负责提供 ServletRequest 对象给容器。

Endpoint 和 Processor 放在一起抽象成了 ProtocolHandler 组件。关系图如下:

Endpoint

负责网络通信,实现类有 NIOEndPoint、Nio2Endpoint、AprEndpoint

Processor

应用协层议处理,支持 HTTP/1.1、HTTP/2、AJP(用于和web 服务器集成)

Adapter

由于存在不同的协议,Tomcat 定义了自己的 Request 类来存放请求信息,Tomcat 引入了 CoyoteAdapter 适配器,将 Tomcat Request 转为 ServletRequest。

posted @ 2020-06-22 16:34  walterlee  阅读(130)  评论(0编辑  收藏  举报