Tomcat架构解析pdf

图书网 2018年8月23日12:12:051 2.7K
摘要

基于Tomcat新版本全面解析应用服务器架构
涵盖Tomcat所有组件的详细配置、使用与优化
知识讲解广度与深度结合,系统性与完整性兼备

Tomcat作为一款开源的轻量级Web应用服务器,技术先进,性能稳定,深受Java爱好者的喜爱,也得到了广大软件开发商的高度认可,目前已成为zui流行的Java Web应用服务器,广泛应用于企业应用系统及云服务平台,是开发和调试JSP/Servlet应用的shouxuan。系统学习Tomcat架构将会令你受益匪浅。

Tomcat架构解析 从功能组件、协议、规范,到详细配置等各个方面,系统性介绍了Tomcat架构的实现方案及使用方式,有助于读者详细了解应用服务器的架构及工作原理。主要内容包括:

★ Tomcat的基础组件架构及工作原理;

★ Tomcat各组件的设计、实现方案、使用方式及详细配置;

★ Tomcat与Web服务器集成及性能优化;

★ Tomcat部分扩展特性介绍:嵌入式、Comet、WebSocket等。

学习Tomcat架构解析,读者可以详细了解应用服务器的架构以及工作原理,不仅可以系统掌握Tomcat的使用,而且对于应用系统基础架构也有很大的借鉴意义。

Tomcat架构解析 内容简介

Tomcat架构解析 基于Tomcat 8.5.x全面介绍了Tomcat的架构、各组件的实现方案以及使用方式,主要包括Tomcat的基础组件架构以及工作原理,Tomcat各组件的实现方案、使用方式以及详细配置说明,Tomcat与Web服务器集成以及性能优化,Tomcat部分扩展特性介绍等。读者可以了解应用服务器的架构以及工作原理,学习Tomcat的使用、优化以及详细配置。

Tomcat架构解析 目录

第1章 Tomcat介绍  1

1.1 简介 1

1.1.1 Tomcat历史 1

1.1.2 Tomcat许可 2

1.2 安装和启动 3

1.2.1 Tomcat下载与安装 3

1.2.2 Tomcat启动 4

1.2.3 IDE启动 5

1.2.4 嵌入式启动 10

1.2.5 Debug启动 11

1.3 Tomcat目录结构 12

1.4 Tomcat 8.5之后的新特性 12

1.5 小结 13

第2章 Tomcat总体架构 14

2.1 总体设计 14

2.1.1 Server 14

2.1.2 Connector和Container 15

2.1.3 Container设计 17

2.1.4 Lifecycle 20

2.1.5 Pipeline和Valve 23

2.1.6 Connector设计 24

2.1.7 Executor 26

2.1.8 Bootstrap和Catalina 28

2.2 Tomcat启动 30

2.3 请求处理 31

2.4 类加载器 33

2.4.1 J2SE标准类加载器 33

2.4.2 Tomcat加载器 34

2.4.3 Web应用类加载器 36

2.5 小结 37

第3章 Catalina 38

3.1 什么是Catalina 38

3.2 Digester 39

3.2.1 对象栈 40

3.2.2 匹配模式 41

3.2.3 处理规则 41

3.2.4 示例程序 42

3.3 创建Server 44

3.3.1 Server的解析 45

3.3.2 Engine的解析 48

3.3.3 Host的解析 49

3.3.4 Context的解析 50

3.4 Web应用加载 53

3.4.1 StandardHost 54

3.4.2 HostConfig 56

3.4.3 StandardContext 60

3.4.4 ContextConfig 64

3.4.5 StandardWrapper 69

3.4.6 Context命名规则 69

3.5 Web请求处理 71

3.5.1 总体过程 71

3.5.2 请求映射 72

3.5.3 Catalina请求处理 80

3.6 DefaultServlet和JspServlet 81

3.6.1 DefaultServlet 82

3.6.2 JspServlet 84

3.7 小结 85

第4章 Coyote 86

4.1 什么是Coyote 86

4.2 Web请求处理 88

4.2.1 主要概念 88

4.2.2 请求处理 90

4.2.3 协议升级 92

4.3 HTTP 94

4.3.1 基础知识 94

4.3.2 配置方式 95

4.4 AJP 97

4.4.1 基础知识 97

4.4.2 Web服务器组件 103

4.4.3 配置方式 106

4.5 HTTP/2.0 106

4.5.1 基础知识 106

4.5.2 配置方式 110

4.6 I/O 111

4.6.1 BIO 112

4.6.2 NIO 115

4.6.3 NIO2 121

4.6.4 APR 130

4.7 小结 134

第5章 Jasper 136

5.1 Jasper简介 136

5.2 JSP编译方式 137

5.2.1 运行时编译 137

5.2.2 预编译 141

5.3 JSP编译原理 144

5.4 小结 151

第6章 Tomcat配置管理 152

6.1 JVM配置 152

6.1.1 JVM配置选项 152

6.1.2 系统属性 153

6.2 服务器配置 158

6.2.1 catalina.properties 158

6.2.2 server.xml 159

6.2.3 context.xml 172

6.3 Web应用配置 172

6.3.1 ServletContext初始化参数 173

6.3.2 会话配置 174

6.3.3 Servlet声明及映射 175

6.3.4 应用生命周期监听器 177

6.3.5 Filter定义及映射 177

6.3.6 MIME类型映射 178

6.3.7 欢迎文件列表 178

6.3.8 错误页面 179

6.3.9 本地化及编码映射 179

6.3.10 安全配置 179

6.3.11 JNDI配置 180

6.3.12 其他 183

6.4 Web应用过滤器 185

6.4.1 CorsFilter 186

6.4.2 CsrfPreventionFilter 188

6.4.3 ExpiresFilter 188

6.4.4 FailedRequestFilter 190

6.4.5 RemoteAddrFilter 191

6.4.6 RemoteHostFilter 191

6.4.7 RemoteIpFilter 192

6.4.8 RequestDumperFilter 195

6.4.9 SetCharacterEncodingFilter 195

6.4.10 WebdavFixFilter 196

6.5 Tomcat管理 196

6.5.1 host-manager 196

6.5.2 manager 197

6.5.3 管理命令行 199

6.5.4 Ant任务 200

6.5.5 JMX 201

6.6 小结 201

第7章 Web服务器集成 202

7.1 Web服务器与应用服务器的区别 202

7.2 集成应用场景 205

7.3 与Apache HTTP Server集成 206

7.3.1 Windows环境安装 206

7.3.2 Linux环境安装 207

7.3.3 mod_jk 209

7.3.4 mod_proxy_ajp 229

7.4 与Ngnix集成 235

7.4.1 Ngnix简介 235

7.4.2 Windows环境安装 237

7.4.3 Linux环境安装 237

7.4.4 Tomcat集成 241

7.5 与IIS集成 243

7.6 小结 243

第8章 Tomcat集群 244

8.1 Tomcat集群介绍 244

8.1.1 Tomcat集群基础 246

8.1.2 Apache Tribes 247

8.1.3 Tomcat集群组件实现 253

8.2 集群配置 254

8.3 会话同步 255

8.3.1 DeltaManager 256

8.3.2 BackupManager 257

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.2 server.xml配置 261

9.2 应用安全 263

9.2.1 Realm 264

9.2.2 HttpServletRequest 265

9.2.3 Authenticator 266

9.3 传输安全(SSL) 267

9.4 Java安全策略 273

9.4.1 简介 273

9.4.2 catalina.policy 275

9.5 小结 279

第10章 Tomcat性能调优 280

10.1 Tomcat性能测试及诊断 281

10.1.1 常见测试方式 281

10.1.2 性能测试工具 282

10.1.3 数据采集及分析 290

10.2 Tomcat性能优化 303

10.2.1 JVM优化 304

10.2.2 Tomcat配置 308

10.3 应用性能优化建议 311

10.4 小结 312

第11章 Tomcat附加功能 313

11.1 Tomcat的嵌入式启动 313

11.1.1 为什么需要嵌入式启动 313

11.1.2 嵌入式启动Tomcat 314

11.1.3 嵌入式启动服务器 316

11.2 Tomcat中的JNDI 317

11.2.1 什么是JNDI 317

11.2.2 Tomcat中的JNDI 318

11.3 Comet和WebSocket 320

11.3.1 什么是Comet 321

11.3.2 Tomcat的Comet实现 322

11.3.3 什么是WebSocket 326

11.3.4 Tomcat的WebSocket实现 328

11.4 小结 335

附录 server.xml配置 336

结束语 370

Tomcat架构解析 精彩文摘

Tomcat是全世界最著名的基于Java语言的轻量级应用服务器,是一款完全开源免费的Servlet容器实现。同时,它支持HTML、JS等静态资源的处理,因此又可以作为轻量级Web服务器使用。作为本书的开篇,本章将简单介绍Tomcat的发展历程以及基本的安装使用,以便读者对Tomcat有个初步的印象。主要包括以下几个方面的内容。

Tomcat的历史及许可。

Tomcat的安装、启动和应用部署。

Tomcat的目录结构。

Tomcat最新版本(8.5/9.0)的特性。

1.1 简介

本节主要介绍了Tomcat的历史以及主要版本的发展情况,以及每个版本对Servlet规范的支持,以便读者能够很好地了解Tomcat的过去以及现状。此外,本节还介绍了Tomcat的授权许可,如果你计划基于Tomcat进行定制化开发并发布自己的服务器中间件产品,那么了解它的许可方式是非常有必要的。

1.1.1 Tomcat历史

Tomcat最初由Sun公司的软件架构师James Duncan Davidson开发,名称为“JavaWebServer”,该项目作为Servlet容器的参考实现,以展示Servlet容器相关技术。随后在Davidson的帮助下,该项目于1999年与Apache软件基金会旗下的JServ项目合并,即为现在的Tomcat。

Tomcat的第一个版本(3.x)发布于1999年,该版本基本源自Sun公司贡献的代码,实现了Servlet 2.2和JSP 1.1规范。2001年,Tomcat发布了4.0版本,作为里程碑式的版本,Tomcat完全重新设计了其架构,并实现了Servlet 2.3和JSP 1.2规范。

发展至今,作为Sun相关规范的参考实现,Tomcat已经成为一款成熟的Servlet容器产品,并作为JBoss等应用服务器产品内嵌的Servlet容器(最新的JBoss版本已改为Undertow)。Tomcat不仅广泛用于开发及测试环境,更大量应用于生产环境当中。事实证明,简单如单独服务器、主备部署,复杂至大型的集群架构,Tomcat均可以实现有效的支撑。

图书网:Tomcat架构解析pdf

继续阅读

→→→→→→→→→→→→→→→→→→→→查找获取

程序设计

重构 改善既有代码的设计(中文版)pdf

《重构:改善既有代码的设计》(中文版)所提的这些重构准则将帮助你一次一小步地修改你的代码,这就减少了过程中的风险。很快你就会把这些重构准则和其名称加入自己的开发词典中,并且朗朗上口...
程序设计

数据结构 C语言版 第2版pdf

适读人群 :普通高校电子信息大类本科生学习、考研,同时也适合零售和培训。 采用“案例驱动”的编写模式。书中结合实际应用,将各章按照“案例引入——数据结构及其操作——案例分析与实现”...
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

评论:1   其中:访客  1   博主  0
    • 惜夜
      惜夜 9

      研究Tomcat原理