Tomcat架構解析 基于Tomcat 8.5.x介紹了Tomcat的架構、各組件的實現方案以及使用方式,主要包括Tomcat的基礎組件架構以及工作原理,Tomcat各組件的實現方案、使用方式以及詳細配置說明,Tomcat與Web服務器集成以及性能優化,Tomcat部分擴展特性介紹等。讀者可以了解應用服務器的架構以及工作原理,學習Tomcat的使用、優化以及詳細配置。
基于Tomcat新版本解析應用服務器架構
涵蓋Tomcat所有組件的詳細配置、使用與優化
知識講解廣度與深度結合,系統性與完整性兼備
Tomcat作為一款開源的輕量級Web應用服務器,技術先進,性能穩定,深受Java愛好者的喜愛,也得到了廣大軟件開發商的高度認可,目前已成為流行的Java Web應用服務器,廣泛應用于企業應用系統及云服務平臺,是開發和調試JSP/Servlet應用的。系統學習Tomcat架構將會令你受益匪淺。
本書從功能組件、協議、規范,到詳細配置等各個方面,系統性介紹了Tomcat架構的實現方案及使用方式,有助于讀者詳細了解應用服務器的架構及工作原理。主要內容包括:
Tomcat的基礎組件架構及工作原理;
Tomcat各組件的設計、實現方案、使用方式及詳細配置;
Tomcat與Web服務器集成及性能優化;
Tomcat部分擴展特性介紹:嵌入式、Comet、WebSocket等。
學習本書,讀者可以詳細了解應用服務器的架構以及工作原理,不僅可以系統掌握Tomcat的使用,而且對于應用系統基礎架構也有很大的借鑒意義。
劉光瑞,北京窩客研發總監,負責窩客產品研發管理及總體架構設計。擁有十幾年的企業級大型業務系統研發架構經驗,成功帶領團隊設計并研發基于Tomcat的組件化微服務架構。2007年在四達軟件擔任高級架構師,主導了數個省份的廣播電視省網業務運營支撐系統的架構設計及優化工作。2012年在電訊盈科擔任高級技術顧問,參與了中國移動供應鏈系統的架構及研發。在應用系統架構及性能優化方面積累了豐富的經驗。
第1章Tomcat介紹1
1.1簡介1
1.1.1Tomcat歷史1
1.1.2Tomcat許可2
1.2安裝和啟動3
1.2.1Tomcat下載與安裝3
1.2.2Tomcat啟動4
1.2.3IDE啟動5
1.2.4嵌入式啟動10
1.2.5Debug啟動11
1.3Tomcat目錄結構12
1.4Tomcat 8.5之后的新特性12
1.5小結13
第2章Tomcat總體架構14
2.1總體設計14
2.1.1Server14
2.1.2Connector和Container15
2.1.3Container設計17
2.1.4Lifecycle20
2.1.5Pipeline和Valve23
2.1.6Connector設計24
2.1.7Executor26
2.1.8Bootstrap和Catalina28
2.2Tomcat啟動30
2.3請求處理31
2.4類加載器33
2.4.1J2SE標準類加載器33
2.4.2Tomcat加載器34
2.4.3Web應用類加載器36
2.5小結37
第3章Catalina38
3.1什么是Catalina38
3.2Digester39
3.2.1對象棧40
3.2.2匹配模式41
3.2.3處理規則41
3.2.4示例程序42
3.3創建Server44
3.3.1Server的解析45
3.3.2Engine的解析48
3.3.3Host的解析49
3.3.4Context的解析50
3.4Web應用加載53
3.4.1StandardHost54
3.4.2HostConfig56
3.4.3StandardContext60
3.4.4ContextConfig64
3.4.5StandardWrapper69
3.4.6Context命名規則69
3.5Web請求處理71
3.5.1總體過程71
3.5.2請求映射72
3.5.3Catalina請求處理80
3.6DefaultServlet和JspServlet81
3.6.1DefaultServlet82
3.6.2JspServlet84
3.7小結85
第4章Coyote86
4.1什么是Coyote86
4.2Web請求處理88
4.2.1主要概念88
4.2.2請求處理90
4.2.3協議升級92
4.3HTTP94
4.3.1基礎知識94
4.3.2配置方式95
4.4AJP97
4.4.1基礎知識97
4.4.2Web服務器組件103
4.4.3配置方式106
4.5HTTP 2.0106
4.5.1基礎知識106
4.5.2配置方式110
4.6I O111
4.6.1BIO112
4.6.2NIO115
4.6.3NIO2121
4.6.4APR130
4.7小結134
第5章Jasper136
5.1Jasper簡介136
5.2JSP編譯方式137
5.2.1運行時編譯137
5.2.2預編譯141
5.3JSP編譯原理144
5.4小結151
第6章Tomcat配置管理152
6.1JVM配置152
6.1.1JVM配置選項152
6.1.2系統屬性153
6.2服務器配置158
6.2.1catalina.properties158
6.2.2server.xml159
6.2.3context.xml172
6.3Web應用配置172
6.3.1ServletContext初始化參數173
6.3.2會話配置174
6.3.3Servlet聲明及映射175
6.3.4應用生命周期監聽器177
6.3.5Filter定義及映射177
6.3.6MIME類型映射178
6.3.7歡迎文件列表178
6.3.8錯誤頁面179
6.3.9本地化及編碼映射179
6.3.10安全配置179
6.3.11JNDI配置180
6.3.12其他183
6.4Web應用過濾器185
6.4.1CorsFilter186
6.4.2CsrfPreventionFilter188
6.4.3ExpiresFilter188
6.4.4FailedRequestFilter190
6.4.5RemoteAddrFilter191
6.4.6RemoteHostFilter191
6.4.7RemoteIpFilter192
6.4.8RequestDumperFilter195
6.4.9SetCharacterEncodingFilter195
6.4.10WebdavFixFilter196
6.5Tomcat管理196
6.5.1host-manager196
6.5.2manager197
6.5.3管理命令行199
6.5.4Ant任務200
6.5.5JMX201
6.6小結201
第7章Web服務器集成202
7.1Web服務器與應用服務器的區別202
7.2集成應用場景205
7.3與Apache HTTP Server集成206
7.3.1Windows環境安裝206
7.3.2Linux環境安裝207
7.3.3mod_jk209
7.3.4mod_proxy_ajp229
7.4與Ngnix集成235
7.4.1Ngnix簡介235
7.4.2Windows環境安裝237
7.4.3Linux環境安裝237
7.4.4Tomcat集成241
7.5與IIS集成243
7.6小結243
第8章Tomcat集群244
8.1Tomcat集群介紹244
8.1.1Tomcat集群基礎246
8.1.2Apache Tribes247
8.1.3Tomcat集群組件實現253
8.2集群配置254
8.3會話同步255
8.3.1DeltaManager256
8.3.2BackupManager257
8.3.3替代方案257
8.4集群部署258
8.4.1實現原理258
8.4.2配置方式259
8.5小結259
第9章Tomcat安全260
9.1配置安全260
9.1.1安裝部署問題260
9.1.2server.xml配置261
9.2應用安全263
9.2.1Realm264
9.2.2HttpServletRequest265
9.2.3Authenticator266
9.3傳輸安全(SSL)267
9.4Java安全策略273
9.4.1簡介273
9.4.2catalina.policy275
9.5小結279
第10章Tomcat性能調優280
10.1Tomcat性能測試及診斷281
10.1.1常見測試方式281
10.1.2性能測試工具282
10.1.3數據采集及分析290
10.2Tomcat性能優化303
10.2.1JVM優化304
10.2.2Tomcat配置308
10.3應用性能優化建議311
10.4小結312
第11章Tomcat附加功能313
11.1Tomcat的嵌入式啟動313
11.1.1為什么需要嵌入式啟動313
11.1.2嵌入式啟動Tomcat314
11.1.3嵌入式啟動服務器316
11.2Tomcat中的JNDI317
11.2.1什么是JNDI317
11.2.2Tomcat中的JNDI318
11.3Comet和WebSocket320
11.3.1什么是Comet321
11.3.2Tomcat的Comet實現322
11.3.3什么是WebSocket326
11.3.4Tomcat的WebSocket實現328
11.4小結335
附錄server.xml配置336
結束語370
整體不錯。。實用性強。。專業性強。。
書不值這個價,內容太亂,感覺在看某人的筆記。
不錯不錯不錯
正在看,最好學一下網絡知識在看,否則很難懂
對掌握tomcat的整體架構有很大幫助
本書很好,是學習tomcat的好教材
剛到手,粗略看下都是想要的知識點。感覺不錯。。。
物流快,書質量看著不錯(還沒有拆封)