全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了



全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Toncat是全世界最著名的基於Java語言的輕量級應用服務器,是一款完 全開源免費的Servlet容器實現。同時,它支持HTML、JS等靜態資源的處理,因此又可以作為輕量級Web服務器使用。作為本書的開篇,本章將簡單介紹Tomcat的發展歷程以及基本的安裝使用,以便讀者對Tomcat有個初步的印象。主要包括以下幾個方面的內容。

  1. Tomeat介紹
  2. Tomeat總體架構
  3. Catalina
  4. Coyote
  5. Jasper
  6. Tomeat配置管理
  7. Web服務器集成
  8. Tomeat集群
  9. Tomeat安全
  10. Tomeat性 能調優
  11. Tomeat附加功能

Tomeat總體架構

作為一款知名的輕量級應用服務器,Tomcat的架 構設計(如生命週期管理、可擴展的容器組件設計、類加載方式)可以為我們的服務器中間件設計,甚至是應用系統組件設計提供非常好的借鑑意義。本章概要地介紹了Tomcat的總體架構,通過本章的學習,你可以瞭解Tomcat各組件的基本概念,併為進一-步 瞭解後續章節講述的各組件打下良好的基礎。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Catalina

本章主要介紹Tomcat的Servlet容器實現一- Catalina。 對於Tomcat來說,Servlet容 器是其核心組件。所有基於JSP/Servlet的Java Web應用均需要依託Servlet容器運行並對外提供服務。通過Catalina,我們可以熟悉Tomcat的工作機制,包括它對各種應用形式.部署場景以及Servlet規範的綜合考慮。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Coyote

通過上一章的講解我們知道, Catalina是Tomcat提供的Servlet容器實現,它負責處理來自客戶端的請求並輸出響應。但是僅有Servlet容器服務器是無法對外提供服務的,還需要由鏈接器接收來自客戶端的請求,並按照既定協議(如HTTP)進行解析,然後交由Servlet容器處理。可以說,Servlet容器和鏈接器是Tomcat最核心的兩個組件,它們是構成一-款Java應用服 務器的基礎。

本章主要介紹了Tomcat提供的鏈接器實現,包括其支持的協議以及IO方式。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Jasper

為了提升處理性能,應用服務器會對JSP類和實例進行緩存,並定時檢測JSP頁面的更新情況,如發生變更,將會重新編譯。由於ISP頁面採用單獨的類加載器,因此重新編譯不會導致整個應用重新加載,這也是我們可以在運行狀態更新JSP頁面的原因。

接下來我們就來了解- -下Tomcat的JSP引擎一Jasper。

  • Jasper簡介
  • JSP編譯方式
  • JSP編譯原理

Tomeat配置管理

在使用Tomcat的過程中,不可避免地要對它的配置進行定製,使其符合我們的要求。這些配置可能是JVM相關的,如內存、系統屬性;也可能是服務器相關的,如端口、虛擬主機、IO、也可能是Web應用相關的,如URL映射、過濾器等。這些配置會涉及多個方面,如開發約束、部署架構、性能、安全、監控管理等。因此無論項目處於開發階段還是已經運行於生產環境,無論是一名開發人員還是一名架構師,都有必要了解Toncat的各項配置,這可以使我們充分利用Tomcat的各種特性來完成相關工作。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Web服務器集成

儘管諸如Tomcat等應用服務器都支持HTML、JavaScript. 圖片等靜態資源的處理,可以用作Web服務器。但是隨著系統併發量的上升以及應用部署複雜度的增加,傳統的基於Java的應用服務器很難承擔起Web服務器的作用。這主要是因為應用服務器對於靜態資源的處理普遍性能相對較差,而Web服務器則可以充分利用操作系統本地IO的優勢。同時,對於靜態資源,Web服務器可以通過緩存等各種方式來提高其訪問性能。除此之外,Web服 務器普遍支持作為前置的請求調度器以支持負載均衡。所有這些都是基於Java的應用服務器所欠缺的。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Tomcat集群

集群是應用服務器不可或缺的一項重要特性。無論是高併發的互聯網應用,還是重業務的企業級應用系統,其部署架構均需要不同程度地考慮對集群的支持。集群不僅要求應用服務器提供相關的管理、同步等功能,還要求應用系統具備與之相應的可伸縮性,這就對應用系統架構提出了更高的要求。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Tomcat安全

安全是系統架構中最重要的關注點之一, 通常情況下,我們所說的安全涵蓋網絡安全、數據安全、操作系統安全、服務器安全以及應用系統安全等諸多方面。

Tomea作為一款應用服務 器,儘管默認情況下可以滿足多數場景的安全需求,但是在安全要求相對較高的環境下,我們仍需要從多個方面對其進行配置。本章主要從以下幾個方面介紹Tomcat中安全相關的一.些配置及功能實現。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Tomeat性能調優

性能一直很重要,但是正如Donald Knuth所說:“過早的優化是- -切邪惡的根源”。我們可以在項目的關鍵節點(如上線前)安排相關的性能壓力測試,可以在開發中避免常見的導致性能的問題(如N+1次查詢等),但是對於如何優化系統、達到何種性能指標,我們要結合項目情況綜合考慮(如項目對併發用戶數和訪問響應時間的要求以及未來業務發展的合理預估等),儘量避免過度優化。開發人員花費數個小時來調整一個不經常使用的小組件的性能,最後往往會發現真正的性能問題另有出處。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

Tomeat附加功能

最後,我們將集中對Tomcat提供的幾個功能進行簡要介紹。這些功能並不複雜,但是它們卻在一些應用場景中被廣泛使用。

全網最全第一個把Tomeat架構解析的這麼清清楚楚,太厲害了

感謝您的閱讀,但是由於文案限制關於Tomcat架構解析以圖片形式展現給大家,對這本Tomcat架構解析感興趣的朋友們請幫忙轉發此文私信回覆【架構書籍】即可免費獲取

書籍獲取方式:

轉發+轉發+轉發後關注我私信回覆【架構書籍】領取


分享到:


相關文章: