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