tomcat入門介紹一

tomcat是一款基於servlet規範開發的應用服務器。(http服務器+servlet容器)

 

概述

整體架構包含兩個核心組建 連接器和容器。連接器對外 處理連接,容器對內處理業務請求

連接器使用ProtocalHandler接口封裝通信協議和IO模型的差異

 

連接器

主要有三塊

【endpoint】底層socket維護,維護連接,解析tcp ip協議 把字節流送給processor

【processor】應用層解析器 解析http/ajp/之類,把請求處理成TomcatRequest傳給adapter

【adapter】連接器和容器的橋樑,把tomcatRequest轉換成servletRequest

 

容器

tomcat的容器主要分四個組建,基本都是1對N的關係。

host域名/context代表一個web服務/wrapper就是servlet。這幾個使用的是組合模式,都有一個父接口Container。

 

來簡單看下外部請求是如何定位到具體的servlet的。

請求過來一定是先建立連接的,這個時候Connector就被確認了,connector屬於一個service,一個service裏面只有一個容器。

現在容器也確定了,後面按照 url context就能找到context,再根據conetxt的web.xml按照映射配置找到servlet

tomcat server.xml片段
<Server>
    <Service>
        <Connector>
        </Connector>
        <Engine>
               <host>
                   <Context></Context>
               </host>
        </Engine>
    </Service>
</Server>


web.xml片段
<!--****************************servlet映射關係配置*************************--> <servlet>  
    <servlet-name>XxServlet</servlet-name>  
    <servlet-class>com.xx.XxServlet</servlet-class>   
</servlet>   
<servlet-mapping>  
    <servlet-name>XxServlet</servlet-name>  
    <url-pattern>/xx</url-pattern>  
</servlet-mapping>  

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章