喵喵喵。。。。之前一段時間在除錯tomcat,分析結構,還找出來原來看不懂的how tomcat works。。。跟著寫了一陣子。。。感覺還是學到了寫東西的。。。那記錄一下吧
先說說tomcat的系統架構。。。tomcat中最頂層的容器是server,代表整個伺服器,server裡有乙個或多個service,表示具體服務。service主要包含兩部分:connector和container.
connector用於處理連線相關的事情,並提供socket與request,response的轉換,container用於封裝和管理servlet,以及具體處理request請求。
catalina--tomcat中的server由catalina來管理,不過它的入口方法在bootstrap類。catalina是整個tomcat的管理者,是開始/關閉shell指令碼的主類。它裡面有三個方法load,start,stop分別用來管理整個伺服器的生命週期:
--load方法用於根據conf/server.xml檔案建立server並呼叫server的init方法進行初始化。
--start方法用於開啟伺服器
--stop方法用於停止伺服器
service--service是包含connector和container的集合,service用適當的connector接收使用者的請求,再發給相應的container來處理。
connector--實現某一協議的聯結器,如預設的有實現http、https、ajp協議的。
engine--engine包含host和context,接到請求後仍給相應的host在相應的context裡處理。
host--就是我們所理解的虛擬主機。
context--就是我們所部屬的具體web應用的上下文,每個請求都在是相應的上下文裡處理的。
下面就是些被container所用的基礎元件:
loader--是被container用來載入各種所需的class。
manager--是被container用來管理session池。
realm--是用來處理安全裡授權與認證。
參考:
1. 看透spring mvc 源**分析與實際
2.
高階結構設計
1.軟體設計引論 2.結構化設計 3.物件導向設計 物件導向設計方法的特點 通過對實際問題的分析,從中抽象出物件,再使用程式語言來表現它 物件導向設計方法的過程 識別物件中的子物件,並識別出對於子物件的操作,然後再根據子物件的操作開發出乙個系統 結構化設計和物件導向設計共有特性 1.將乙個系統分解成...
迴圈結構設計
c語言有2種常用的迴圈結構,分別是for迴圈和while迴圈。其中while迴圈使用的頻率相對較多,下面我們先看for迴圈。for迴圈 for 這是乙個死迴圈,何為死迴圈,就是永不停止的迴圈。比如for 分割線 int i for i 0 i 10 i 該語句表示,迴圈列印10次hello worl...
選擇結構設計
一 選擇結構和條件判斷。1 用if語句實現選擇結構 例 輸出三個數,將其按從大到小排列輸出。在這裡插入 片 include int main if a c if b c printf a d,b d,c d n a,b,c 解釋 定義三個數a,b,c用來比大小 用if語句作為判斷,滿足該條件就執行裡...