之前提到tomcat的http訊息由socketprocessor處理,通過init時註冊的handler傳給http11connectionhandler::process. 之後呼叫http11processor::process,在這個函式中完成請求的整個過程。
使用chrome中請求:
1. 在inputbuffer.parserequestline(false);中解析http頭中的第一行
2. 在inputbuffer.parseheaders();中解析http頭將內容儲存在headers。
===mimeheaders ===
host= 127.0.0.1:8090
connection= keep-alive
accept-encoding= gzip,deflate,sdch
accept-language= zh-cn,zh;q=0.8
3. preparerequest();根據http頭設定filter。
4. adapter.service(request,response);交給container處理請求,返回response。
5. endrequest();將response返回給客戶端。
Tomcat原始碼分析
本文將會介紹tomcat的原始碼,並給出一些分析。org.apache.catalina.startup.bootstrap 該類是tomcat啟動的入口類,包含有main方法。它的主要工作包括 引數解析 環境變數讀取 設定 類載入器初始化 通過反射的方式來呼叫catalina。org.apache...
Tomcat 原始碼分析
tomcat 原始碼分析 bootstrap 引導過程 1 初始化自定義的類載入器 common shared catalina 2 建立並例項化第乙個元件類 catalina tomcat 元件體系 server service connector engine host context 實現li...
tomcat原始碼分析
1 執行環境 tomcat 版本 8.0.x 編譯工具 ant 執行ide idea13.1 2 tomcat架構組成 如下圖所示 server 其實就是background程式,在tomcat裡面的server的用處是啟動和監聽服務端事件 諸如重啟 關閉等命令。service 在tomcat裡面,...