Tomcat設計原理個人學習理解

2021-08-26 21:27:58 字數 1148 閱讀 4863

在看how tomcat works,收穫頗深,結合最近看的**和個人理解寫些個人心得

1、tomcat對每個request的管理

在org.apache.catalina.connector.http包下,有個httpconnector聯結器類。

它的工作過程是,先開啟socketserver埠,設定httpprocessors的list大小,用於限制連線者數量。

當有乙個http請求時,httpconnector將請求都的socket交給httpprocessor,由它負責建立httprequest和httpresponse。由httpresponse和httprequest物件來處理請求和返回響應請示結果。

2、tomcat對多執行緒管理

httpconnector類有的工作是監聽請求。當有請求時,將請求交給httpprocessor。因httpprocessor繼承runnable介面,而httpconnector類中可設定httpprocessor堆疊數量。通過httpprocessor來作多執行緒處理。

3、tomcat對事件監聽的處理方式

tomcat在很多地方通過觀察者模式來實現訊息訂閱,請看以下**:

//物件狀態物件,做為引數傳給訂閱者

publicfinalclasslifecycleevent

extendseventobject

publiclifecycleevent(lifecycle lifecycle, string type, object data) }

//生命週期訂閱者,根據物件狀態做相應處理

publicinte***celifecyclelistener

//訊息

publicinte***celifecycle

4、tomcat分布式部署

5、tomcat異常處理機制

tomcat異常處理對多國語言的支援,tomcat在util中有個類「stringmanager」,通過呼叫getstring方法到獲得異常資訊多國語言支援。

Weak 原理 個人學習總結

weak簡單來說是乙個雜湊表,key為修飾物件的位址,value為指向該位址的指標陣列。weak是由runtime初始化並維護的乙個weak表。在runtime的原始碼中由乙個objc weak檔案中進行定義了weak表的結構體及相關的方法。其中結構體中定義可乙個table weak t的乙個wea...

如何管理個人學習資料

我想大部分人到一定程度都會發生這種情況,明明自己之前曾經研究用過的東西,等到了該使用的時候忘記了.更慘的是怎麼找了找不到了.結果最後整的心情鬱悶,唉,之前白學了.之前的方法很隨意,用過小紙條,丟了就找不到了.用過筆記本,後來發現根本不會去看它,然後也就慢慢慢慢,消失了.用過很久時間的ubuntu自帶...

機器學習原理個人總結

1 用自己的話說明機器學習的四大分類 classification 分類 clustering 聚類 regression 回歸 dimensionality reduction 降維 1 回歸是對已有的資料樣本點進行擬合,再根據擬合出來的函式,對未來進行 商品 走勢的 就是回歸任務。2 分類需要先...