用了十幾年的Tomcat,你真的瞭解它嗎?阿里大師帶你全方位解析


有很多初級程序員會把Tomcat僅僅當做一個工具,而忽略了它的重要性。對於一個最簡單的Web項目架構來說,Tomcat是前軍,SSM是中軍,Mysql是後方,而我們通常非常重視SSM框架的學習,而忽略Tomcat,如果能夠多懂得關於Tomcat的底層原理知識,那麼對於日常開發工作或項目性能調優是非常重要的。

比如:

我們通常都知道Tomcat是一個Servlet容器,那麼它到底是怎麼實現Servlet規範的呢?Tomcat到底是如何處理一個HTTP請求,並如何將請求傳遞給Servlet的呢?Tomcat是怎麼部署一個應用的?Tomcat中War包和Jar包的區別是什麼?Tomcat和Socket、Tcp協議之間存在什麼關係呢?到底什麼是Socket?Tomcat為什麼要使用自定義類加載器?Tomcat的架構設計非常複雜,存在很多組件,那麼為什麼要這麼設計呢?Tomcat到底該如何進行性能調優?

所以,對於Tomcat,正是因為它足夠強大和優秀才容易被我們忽視。工欲善其事必先利其器,如果我們能真正掌握Tomcat的底層原理,那麼將會有很大收穫。

最近發現了一份Tomcat的PDF,講解很透徹。今天分享給大家。

本書是為所有想學習Tomcat servlet container的讀者編寫的,是一本有關Tomcat由淺入深、深入淺出的優秀參考書。本書不僅適用於Tomcat愛好者,更適用於Tomcat的程序員。

Tomcat是目前比較流行的Web服務器之一。作為一個開源和小型的輕量級應用服務器,Tomcat易於使用,便幹部署,但Tomcat本身是一個非常複雜的系統,包含了很多功能模塊。這些功能模塊構成了 Tomcat的核心結構。只要是對Tomcat有興趣的同道中人,都可以從這本書中有所收穫

本書共分為11章,由於pdf文檔裡的細節內容實在過多所以只編輯了部分知識點的章節粗略的介紹下,每個章節小節點裡面都有更細化的內容!以下就是部分章節目錄,為了不影響文章的觀賞性,目錄上的詳細講解也無法一一列出,文末底下有獲取以下章節的所有詳細知識講解方式。

第一章 Tomcat 的開幕式

筆者會在本章中解釋如何安裝Tomcat、如何讓它運行以及為了確保其能正常運行而如何測試

安裝TomcatTomcat的啟動、停止及重啟自動啟動安裝後的測試Tomcat從何而來?

第二章 配置 Tomcat

在本章中,筆者首先會說明服務器相關信息文件所在的位置,如何找出問題的根源,同時會討論在架設與配置Tomcat時經常會犯的一些錯誤

使用Apache Web服務器重定向Web應用程序的目錄從8080改變端口號Java VM配置變換JSP編譯器管理領域、角色及用戶控制會話訪問JNDI與JDBC的資源Servlet自動重載定製用戶目錄Tomcat應用程序示例公共網關接口(CGI)Tbmcat Admin webapp

第三章 在Tomcat中部署Servlet與JSP Web應用程序

本章會展現由servlet、JSP、與其他文件組成的Web應用程序,並討論幾種部署方式。最後再討論Manager Web應用程序,因為它可以替您處理一些部署工作。

Web應用程序的佈局部署解包的Web應用程序目錄部署WAR文件熱部署使用WAR文件Manager Web應用程序Apache Ant自動化部署Symbolic Links

第四章 Tomcat的性能調校

在本章中,筆者會說明調校底層的Java運行時環境與Tomcat服務器本身的一些觀念。

測量Web服務器的性能外部調校內部調校容量規劃額外的資源


第五章 與Apache Web服務器的整合

在本章中,筆者會列出將Tomcat整合到其他web服務器的多種方法

整合的優缺點安裝Apache httpdApache與Tomcat的整合Tomcat在APR連接器上提供HTTP服務

第六章 Tomcat安全防護

在本章中,我們會詳細討論什麼是安全防護,以及在安裝的Tomcat中怎樣改善安全防護能力。

系統安全防護多臺服務器的安全防護模式使用SecurityManager授予文件權限設置Tomcat chroot Jail過濾黑客攻擊用SSL加強Tomcat的安全防護性能

第七章 配置

本章會詳細討論這些配置文件中每一個重要部分的語法

server.xmlweb.xmltomcat-users.xmlcatalina.policycatalina.propertiescontext.xml

第八章 調試與疑難排解

在本章中,筆者會介紹一些尋找故障信息的方法,以便協助您查出問題發生的原因,並列舉筆者及其他人曾經犯過的錯誤示例,這些錯誤現象的發生,不是立即就顯而易見的(並不是很容易解決)。

解讀日誌文件獵尋錯誤URL與HTTP會話用RequestDumper Valve來調試無法停止Tomcat的疑難排解

第九章 從源代碼組建Tomcat

本章從源碼來看怎麼組建一個Tomcat

安裝Apache Ant獲取資源下載支持庫組建Tomcat

第十章 Tomcat集群

在本章中,筆者會詳細說明建立Tomcat系統集群的步驟,其中包括架設多臺機器來管理Web應用程序。

集群術語HTTP請求的通信序列分佈式JAVA Servlet ContainerTomcat 6集群實現JDBC請求分佈與故障復原其他資源

第十一章 閉幕式

筆者希望本書已幫助了讀者根據自己的意願使用Tomcat,並且提供了許多可以利用的範例。

補充資源社區

由於細節內容實在太多了,為了不影響文章的觀賞性,只截出了一部分知識點大致的介紹一下,每個小節點裡面都有更細化的內容!

需要這份《Tomcat權威指南》的朋友可以幫忙轉發一下這篇文章,關注小編,私信“資料”就可以免費獲取到了

,還有小編準備的一份Java進階學習路線圖(Xmind)以及來年金三銀四必備的一份《Java面試必備指南》