1. connector配置
<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" /> <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />
2. 为什么有多个connector
通过不同的协议,提供不同的连接
3. connector相关的问题
- 一个http请求是怎么被tomcat监听到的,会有哪些处理;
- 为什么请求可以有需要通过nginx的,也可以不需要nginx的直接请求到tomcat上?
4. connector做了什么事
(1)监听端口,创建服务端与客户端的链接;socket.accept()
(2)获取到客户端请求的socket数据,并对Socket数据进行解析和包装成Http请求数据格式;
(3)将包装后的数据交给Container处理。
5. Connector源码
核心属性
Connector有两个属性:protocolHandler(协议)和adapter(适配器)
adapter适配器
实现类: CoyoteAdapter
主要封装了Connector