Professional Apache Tomcat 6
副标题:无
作 者:(美)Vivek Chopra,(美)Sing Li,(美)Jeff Genender著;杨金奎,冯佳,李波等译
分类号:
ISBN:9787115193520
微信扫一扫,移动浏览光盘
简介
通过阅读本书,读者将掌握安装、配置和运行Apache Tomcat服务器的全部知识。本书不仅提供了配置选项的逐行分析,还探究了Tomcat的特性和功能。因此读者将能获得解决各种问题的技巧,这些问题出现在系统管理的各个阶段,包括共享主机、安全、系统测试和性能测试及调优。
本书重点讲解Tomcat 6的应用知识,介绍了新的架构和性能更改。从基本的Tomcat和Web应用程序配置到用于集群、JDBC连接、日志和其他功能的高级技术,这些内容将帮助读者高效地管理和执行Tomcat部署。
主要内容:
在Windows和UNIX/Linux系统上安装JVM和Tomcat的方法;
打包和部署Web应用程序的步骤;
配置Tomcat的内部HTTP协议栈,包括新的APR和NIO连接器;
使用Apache Web服务器或Microsoft IIS作为前端Web服务器来部署Tomcat的方法;
负载均衡和大量Tomcat服务器的集群;
在虚拟主机环境下安装Tomcat的方法;
加载部署在Tomcat中的测试Web应用程序的方法;
·使用内部的维护统计功能实时监控Tomcat服务器的方法;
·提供Web应用程序的扩展性和高可用性的技术;
·提供Tomcat 6的性能技巧和最佳实践。
本书读者对象:
本书适于负责Tomcat配置、性能调优、系统安全或部署架构的J2EE系统管理员和Java开发者阅读。
本书由在职程序员组织和撰写,能够充分满足程序员、开发人员和IT专业人士的实际需求。本书内容定位于技术专家日常面对的各种技术问题,提供了示例、实用解决方案和专家级的新技术剖析,这些内容都可以帮助程序员更好地完成工作。
目录
第1章 apache tomcat . 1
1.1 谦逊的开始:apache项目 2
1.2 apache软件基金会 2
1.3 tomcat 3
1.3.1 分发tomcat:apache的许可证 3
1.3.2 与其他许可证的比较 4
1.4 蓝图:java ee 5
1.4.1 java api 6
1.4.2 java ee api 6
1.4.3 java ee应用服务 7
1.4.4 向标准化看齐,在实践中竞争 7
1.4.5 tomcat和应用服务器 8
1.5 tomcat和web服务器 8
1.6 本章小结 9
第2章 web的应用:servlet、jsp及其他 10
2.1 web应用简史 10
2.1.1 cgi脚本:第一个动态文本机制 10
2.1.2 java服务器端:servlet 11
2.1.3 javaserver page 16
2.1.4 jsp标签库 18
.2.1.5 jsp el 20
2.1.6 mvc架构 20
2.1.7 使用合适的web技术 22
2.2 web应用的创建和分类 22
2.3 本章小结 23
第3章 tomcat安装 24
3.1 安装java虚拟机 24
3.1.1 在windows上安装jvm 25
3.1.2 在linux上安装jvm 26
3.2 安装tomcat 28
3.2.1 选择安装类别 28
3.2.2 检验下载文件 29
3.2.3 windows上安装tomcat 29
3.2.4 在windows下使用zip文件安装tomcat 34
3.2.5 在linux下安装tomcat 34
3.3 使用源代码构建tomcat 36
3.3.1 是需要通过源代码构建tomcat 37
3.3.2 下载源代码版本 37
3.3.3 subversion储存库 37
3.3.4 构建一个源代码版本 37
3.4 tomcat安装目录 38
3.5 安装apr 39
3.6 疑难解答和详细说明 40
3.6.1 类版本错误 41
3.6.2 使用中的端口号 41
3.6.3 运行多重实例 41
3.6.4 代理阻塞通道 41
3.7 本章小结 42
第4章 tomcat架构 43
4.1 tomcat目录概述 43
4.1.1 bin目录 43
4.1.2 conf目录 44
4.1.3 lib目录 45
4.1.4 logs目录 45
4.1.5 temp目录 45
4.1.6 webapps目录 45
4.1.7 work目录 46
4.2 tomcat架构概述 46
4.2.1 服务器 47
4.2.2 服务 47
4.2.3 tomcat架构中的其余类 50
4.3 连接器架构 51
4.3.1 通信路径 51
4.3.2 连接器协议 52
4.3.3 选择连接器 54
4.4 生命周期 55
4.4.1 lifecycle接口 55
4.4.2 lifecyclelistener接口 56
4.5 根据架构进行配置 57
4.6 本章小结 58
第5章 tomcat的基本配置 59
5.1 tomcat 6配置的要点 59
5.2 $catalina_home/conf中的文件 60
5.3 服务器的基本配置 61
5.3.1 通过server.xml默认文件配置服务器 61
5.3.2 应用服务器配置下的tomcat运行 64
5.3.3 web应用软件的context定义 70
5.3.4 默认context.xml文件 70
5.3.5 认证和tomcat-users.xml文件 72
5.3.6 默认的部署描述符——web.xml 73
5.3.7 servlet.xml、context描述符和web.xml怎样协同工作 78
5.3.8 严密的访问控制:catlina.policy 81
5.3.9 catalina.properties:建立 在访问查询上的严密的访问控制 84
5.3.10 引导配置 84
5.3.11 配置和管理的不同点 85
5.4 tomcat 6基于web的gui配置器 85
5.5 本章小结 87
第6章 高级tomcat特性 88
6.1 阀——截取tomcat样式 88
6.2 标准阀 89
6.3 访问日志实现 90
6.4 日志文件范围 90
6.5 单点登录实现 93
6.5.1 不使用单点登录阀实现多次登录 93
6.5.2 配置单点登录阀 96
6.6 form认证器阀 96
6.7 通过请求过滤器限制访问 96
6.7.1 远程地址过滤器 97
6.7.2 远程主机过滤器 97
6.7.3 配置请求过滤器阀 97
6.7.4 请求记录器阀 98
6.8 持久会话 99
6.8.1 持久会话的必要性 99
6.8.2 配置persistent session manager 99
6.9 jndi资源配置 101
6.9.1 什么是jndi 101
6.9.2 tomcat和jndi 103
6.9.3 典型的tomcat jndi资源 103
6.9.4 通过jndi配置资源 104
6.9.5 配置jdbc datasource 106
6.9.6 配置mail会话 108
6.10 配置lifecycle listener 111
6.10.1 tomcat组件发送的生命周期事件 111
6.10.2 [listener]元素 112
6.10.3 tomcat 6 lifecycle listener配置 113
6.11 本章小结 115
第7章 web应用程序配置 117
7.1 理解web应用程序内容 117
7.1.1 公共资源 118
7.1.2 web-inf目录 119
7.1.3 meta-inf目录 120
7.2 理解部署描述符 121
7.2.1 servlet 2.3类型部署描述符 122
7.2.2 servlet 2.4/2.5类型部署描述符 135
7.3 本章小结 151
第8章 web应用程序管理 152
8.1 web应用程序示例 152
8.2 tomcat管理员程序 154
8.2.1 允许访问管理员程序 155
8.2.2 配置管理员程序 156
8.3 tomcat管理器:网络接口 158
8.3.1 显示tomcat服务器状态 159
8.3.2 管理web应用程序 159
8.3.3 部署web应用程序 161
8.4 tomcat管理器:用ant管理应用程序 162
8.5 tomcat管理器:使用http请求 167
8.5.1 列出已部署的应用程序 168
8.5.2 部署新的应用程序 169
8.5.3 在tomcat 6中安装/部署应用程序 170
8.5.4 远程部署新的应用程序 170
8.5.5 从本地路径部署新的应用程序 171
8.5.6 重载现有的应用程序 173
8.5.7 列出可用的jndi资源 174
8.5.8 列出os和jvm属性 174
8.5.9 停止现有的应用程序 175
8.5.10 启动被停止的应用程序 175
8.5.11 反部署web应用程序 176
8.5.12 显示会话统计 176
8.5.13 使用jmx代理servlet查询tomcat内核 177
8.5.14 使用jmx代理servlet设置tomcat内核 178
8.6 可能发生的错误 178
8.7 安全性考虑 179
8.8 tomcat部署器 181
8.9 本章小结 181
第9章 类装载器 182
9.1 类装载器概述 182
9.1.1 标准的java se类装载器 183
9.1.2 关于类装载器的更多行为 186
9.1.3 创建自定义类装载器 187
9.1.4 为什么tomcat需要自定义的类装载器 188
9.2 安全性和类装载器 188
9.2.1 类装载器委派 188
9.2.2 核心类限制 189
9.2.3 独立的类装载器命名空间 189
9.2.4 securitymanager 189
9.3 tomcat与类装载器 190
9.3.1 系统类装载器 191
9.3.2 endorsed standards override机制 191
9.3.3 通用类装载器 191
9.3.4 web应用程序类装载器 192
9.4 动态类重载 193
9.5 通用类装载器缺陷 194
9.5.1 在不同的类装载器中分割包 194
9.5.2 singleton 194
9.5.3 xml分析器 195
9.6 本章小结 196
第10章 http连接器 197
10.1 http连接器 198
10.1.1 tomcat 6 http/1.1连接器 198
10.1.2 高级nio连接器 202
10.1.3 comet异步io支持 203
10.1.4 本地apr连接器 203
10.2 配置tomcat支持cgi 207
10.3 配置tomcat以支持ssi 209
10.3.1 配置tomcat 6 ssi servlet 209
10.3.2 配置tomcat 6 ssi过滤器 212
10.4 在代理服务器后运行tomcat 214
10.5 性能调整 214
10.5.1 可调整的配置属性 215
10.5.2 tcp/ip栈调整技巧 216
10.6 前端tomcat 6和web服务器 216
10.7 本章小结 217
第11章 tomcat与apache http服务器 218
11.1 ajp连接器体系结构 218
11.1.1 apache的本地代码模块 219
11.1.2 apache jserv协议 220
11.1.3 ajp连接器.. 220
11.2 apache web服务器前端或独立的tomcat 220
11.3 了解tomcat worker 221
11.3.1 多个tomcat worker 221
11.3.2 使用workers.properties文件配置apache服务器 与多个tomcat worker协同工作 221
11.4 连接tomcat与apache 225
11.4.1 tomcat 6配置 226
11.4.2 apache web服务器配置 226
11.4.3 使用mod_jk模块 227
11.4.4 使用mod_proxy模块 233
11.5 为apache web服务器配置ssl 237
11.5.1 为apache配置mod_ssl 238
11.5.2 测试启用ssl的apache设置 242
11.5.3 启用ssl的apache-tomcat设置 245
11.6 tomcat负载平衡与apache 246
11.6.1 更改tomcat启动文件中的catalina_home 247
11.6.2 设置不同的ajp连接器端口 248
11.6.3 设置不同的服务器端口 248
11.6.4 禁用默认的http/1.1连接器 248
11.6.5 在standalone engine中设置jvmroute 249
11.6.6 注释 catalina engine 249
11.6.7 httpd.conf中的指令 249
11.6.8 workers.properties中的worker配置 250
11.7 测试负载平衡器 252
11.7.1 测试sticky会话 254
11.7.2 测试round-robin行为 254
11.7.3 在不同的负载系数下测试 256
11.8 本章小结 257
第12章 tomcat与iis 258
12.1 isapi插件的角色 258
12.2 连接tomcat和iis 259
12.2.1 检查tomcat与iis的安装 260
12.2.2 配置jk连接器 260
12.2.3 安装isapi插件 261
12.2.4 配置tomcat worker 261
12.2.5 配置转发请求规则 263
12.2.6 可选的url重写规则配置 264
12.2.7 为isapi插件升级windows注册表 264
12.2.8 iis 5独立模式(只针对iis 6) 267
12.2.9 在iis下创建虚拟目录 268
12.2.10 添加作为iis过滤器的isapi插件 271
12.2.11 授权作为web应用程序扩展的isapi插件(只针对iis 6) 272
12.2.12 测试最后的设置 273
12.3 故障解决技巧 274
12.4 使用ssl 275
12.5 iis和tomcat的可扩展架构 275
12.5.1 分发web和应用程序部署 276
12.5.2 多个tomcat workers 277
12.5.3 负载平衡的ajp worker 277
12.6 本章小结 277
第13章 jdbc连接 279
13.1 jdbc基础 279
13.1.1 建立和终止rdbms连接 281
13.1.2 jdbc版本演化 281
13.1.3 jdbc驱动类型 282
13.1.4 数据库连接池 282
13.1.5 连接池的问题 284
13.1.6 tomcat和jdbc演化 284
13.2 tomcat 6中的jndi模拟和连接池 285
13.3 首选的配置:jndi资源 286
13.3.1 resource标签 286
13.3.2 继承jndi资源配置 288
13.3.3 测试jndi资源配置 293
13.4 可选的jdbc配置 295
13.5 可选的连接池管理器 295
13.5.1 关于c3p0池管理器 295
13.5.2 部署c3p0池管理器 296
13.5.3 无需jndi查找获得jdbc连接 296
13.5.4 使用c3p0测试对非jndi池的访问 298
13.5.5 使用jndi映射获得连接 298
13.5.6 使用tomcat 6 jndi-comp-atible查找测试c3p0 300
13.5.7 部署第三方连接池 300
13.6 本章小结 301
第14章 tomcat安全 302
14.1 核查下载的tomcat的完整性 302
14.1.1 核查md5摘要 303
14.1.2 使用pgp签名来核查下载的文件 303
14.2 确保tomcat服务器安全安装 307
14.2.1 去除默认的应用程序 307
14.2.2 root和tomcat-docs 308
14.2.3 系统应用程序——manager和host-manager 308
14.2.4 约束系统应用程序访问安全性 308
14.2.5 删除jsp和servlet的例子 308
14.2.6 更改shutdown命令 309
14.3 使用特殊账户运行tomcat 309
14.3.1 创建一个无特权的tomcat用户 309
14.3.2 使用tomcat用户运行tomcat 310
14.4 确保文件系统安全 311
14.4.1 windows文件系统 311
14.4.2 linux文件系统 313
14.5 确保java虚拟机的安全 313
14.5.1 security manager概述 313
14.5.2 使用tomcat的security manager 317
14.5.3 推荐的security manager练习 319
14.6 确保web应用程序的安全 321
14.6.1 “认证”和“域” 322
14.6.2 域安全性 326
14.7 ssl加密 341
14.7.1 jsse 342
14.7.2 使用ssl保护资源 344
14.8 保证defaultservlet的安全 346
14.8.1 禁用目录列表 347
14.8.2 禁用invoker servlet、ssi和cgi gateway 347
14.9 主机限制 347
14.10 本章小结 348
第15章 共享的tomcat主机 349
15.1 虚拟主机概念 349
15.2 apache中的虚拟主机 350
15.2.1 实例部署方案 350
15.2.2 apache中基于ip的虚拟主机 351
15.2.3 apache中基于名称的虚拟主机 353
15.3 tomcat中的虚拟主机 357
15.3.1 实例部署方案 357
15.3.2 作为独立服务器的tomcat 359
15.3.3 使用apache的tomcat 366
15.3.4 配置apache 367
15.4 tomcat host-manager应用程序 369
15.5 虚拟主机问题:稳定性、安全和性能 370
15.6 调整tomcat中的虚拟主机设置 370
15.6.1 为每个虚拟主机创建独立的jvm 371
15.6.2 在tomcat jvm上设置内存资源限制 375
15.6.3 使用java security manager限制 377
15.7 本章小结 377
第16章 使用jmx监视和管理tomcat 379
16.1 管理需求 380
16.2 关于jmx 381
16.2.1 jmx体系结构 382
16.2.2 工具层 383
16.2.3 代理层 384
16.2.4 分布式服务层 387
16.3 jmx远程api 387
16.4 mbean介绍 387
16.4.1 标准mbean 387
16.4.2 动态mbean 388
16.4.3 模型mbean 388
16.4.4 开放mbean 388
16.5 jmx在tomcat 6中的可管理元素 388
16.5.1 可管理的tomcat 6体系结构组件 389
16.5.2 可管理的嵌入式组件 392
16.5.3 可管理的运行时数据对象 393
16.5.4 可管理的资源对象 394
16.6 通过manager proxy访问tomcat 6的jmx support 399
16.6.1 使用jmx proxy 400
16.6.2 修改mbean属性 402
16.6.3 使用jconsole gui监视 tomcat 404
16.6.4 为远程监视配置tomcat 407
16.7 本章小结 410
第17章 集群 411
17.1 集群益处 411
17.1.1 可扩展性与集群 412
17.1.2 高可靠性的必要性 412
17.2 集群基础 413
17.2.1 主-备用拓扑模式 413
17.2.2 故障转移行为模式 414
17.3 tomcat 6集群模型 415
17.3.1 负载平衡 415
17.3.2 会话共享 417
17.4 使用tomcat 6集群 420
17.4.1 tomcat 6中的会话管理 420
17.4.2 cookie和现代浏览器的角色 421
17.4.3 配置一个tomcat 6集群 421
17.4.4 通用前端:通过apache mod_jk使负载平衡 426
17.4.5 准备使用不同的后端会话共享 427
17.4.6 后端1:内存复制配置 427
17.4.7 后端2:使用共享文件存储的永久会话管理器 438
17.4.8 后端3:使用jdbc存储的永久会话管理器 440
17.4.9 测试使用jdbc永久会话管理器后端的tomcat集群 442
17.5 集群的复杂性 442
17.5.1 集群和性能 443
17.5.2 集群和响应时间 443
17.5.3 使用集群解决性能问题 443
17.6 本章小结 444
第18章 嵌入式tomcat 445
18.1 现代系统设计中嵌入式tomcat的重要性 445
18.1.1 典型地嵌入式应用程序 446
18.1.2 使用嵌入式tomcat开发 447
18.2 本章小结 456
第19章 日志 457
19.1 从tomcat 5的变革 457
19.2 log4j 458
19.2.1 log4j体系结构 458
19.2.2 log4j安装和配置 461
19.2.3 log4j入门指南 465
19.2.4 log4j高级用法 467
19.2.5 log4j性能建议 478
19.3 juli 478
19.3.1 java日志体系结构 478
19.3.2 juli入门指南 480
19.4 日志文件分析 482
19.5 本章小结 483
第20章 性能测试 484
20.1 性能概念 484
20.1.1 评估什么 484
20.1.2 可扩展性和性能 485
20.1.3 理解用户角度的性能 485
20.1.4 评估性能 486
20.2 jmeter 487
20.2.1 安装和运行jmeter 488
20.2.2 设计和理解使用jmeter的测试计划 488
20.2.3 jmeter特性 492
20.2.4 分布式负荷测试 503
20.2.5 解释测试结果 504
20.3 替代jmeter的工具 506
20.4 性能测试后的事项 507
20.5 本章小结 508
第21章 性能调优 509
21.1 性能调优的最佳实践 509
21.1.1 步骤1:建立测试台 510
21.1.2 步骤2:性能测试和确定基线 510
21.1.3 步骤3:诊断性能瓶颈 511
21.2 诊断tomcat的性能问题 512
21.3 tomcat性能调优提示 513
21.3.1 jvm的参数调优 514
21.3.2 预编译jsp 516
21.3.3 tomcat配置调优 518
21.3.4 适当的时候使用web服务器的静态内容 527
21.4 本章小结 528
附录a tomcat和集成开发环境 529
a.1 eclipse 529
a.1.1 调试eclipse中的远程web应用程序 530
a.1.2 使用sysdeo tomcat插件部署和调试本地web应用程序 532
a.1.3 使用web工具平台部署和调试web应用程序 534
a.1.4 使用apache ant和eclipse管理web应用程序部署 535
a.2 netbeans 537
a.2.1 调试netbeans中的远程web应用程序 537
a.2.2 调试netbeans内的web应用程序 539
a.3 小结 539
附录b apache ant 540
b.1 安装ant 540
b.2 ant介绍 541
b.3 ant诀窍 544
b.3.1 使用ant创建web应用程序 544
b.3.2 编译jsp 549
b.3.3 利用属性文件和命令行参数的可重用ant脚本 551
b.3.4 创建日志 552
b.3.5 通过电子邮件创建通知 553
b.3.6 ant和源控制系统 555
b.3.7 自动测试 555
b.4 持续集成 556
b.5 ant任务参考 557
b.6 小结... 560
1.1 谦逊的开始:apache项目 2
1.2 apache软件基金会 2
1.3 tomcat 3
1.3.1 分发tomcat:apache的许可证 3
1.3.2 与其他许可证的比较 4
1.4 蓝图:java ee 5
1.4.1 java api 6
1.4.2 java ee api 6
1.4.3 java ee应用服务 7
1.4.4 向标准化看齐,在实践中竞争 7
1.4.5 tomcat和应用服务器 8
1.5 tomcat和web服务器 8
1.6 本章小结 9
第2章 web的应用:servlet、jsp及其他 10
2.1 web应用简史 10
2.1.1 cgi脚本:第一个动态文本机制 10
2.1.2 java服务器端:servlet 11
2.1.3 javaserver page 16
2.1.4 jsp标签库 18
.2.1.5 jsp el 20
2.1.6 mvc架构 20
2.1.7 使用合适的web技术 22
2.2 web应用的创建和分类 22
2.3 本章小结 23
第3章 tomcat安装 24
3.1 安装java虚拟机 24
3.1.1 在windows上安装jvm 25
3.1.2 在linux上安装jvm 26
3.2 安装tomcat 28
3.2.1 选择安装类别 28
3.2.2 检验下载文件 29
3.2.3 windows上安装tomcat 29
3.2.4 在windows下使用zip文件安装tomcat 34
3.2.5 在linux下安装tomcat 34
3.3 使用源代码构建tomcat 36
3.3.1 是需要通过源代码构建tomcat 37
3.3.2 下载源代码版本 37
3.3.3 subversion储存库 37
3.3.4 构建一个源代码版本 37
3.4 tomcat安装目录 38
3.5 安装apr 39
3.6 疑难解答和详细说明 40
3.6.1 类版本错误 41
3.6.2 使用中的端口号 41
3.6.3 运行多重实例 41
3.6.4 代理阻塞通道 41
3.7 本章小结 42
第4章 tomcat架构 43
4.1 tomcat目录概述 43
4.1.1 bin目录 43
4.1.2 conf目录 44
4.1.3 lib目录 45
4.1.4 logs目录 45
4.1.5 temp目录 45
4.1.6 webapps目录 45
4.1.7 work目录 46
4.2 tomcat架构概述 46
4.2.1 服务器 47
4.2.2 服务 47
4.2.3 tomcat架构中的其余类 50
4.3 连接器架构 51
4.3.1 通信路径 51
4.3.2 连接器协议 52
4.3.3 选择连接器 54
4.4 生命周期 55
4.4.1 lifecycle接口 55
4.4.2 lifecyclelistener接口 56
4.5 根据架构进行配置 57
4.6 本章小结 58
第5章 tomcat的基本配置 59
5.1 tomcat 6配置的要点 59
5.2 $catalina_home/conf中的文件 60
5.3 服务器的基本配置 61
5.3.1 通过server.xml默认文件配置服务器 61
5.3.2 应用服务器配置下的tomcat运行 64
5.3.3 web应用软件的context定义 70
5.3.4 默认context.xml文件 70
5.3.5 认证和tomcat-users.xml文件 72
5.3.6 默认的部署描述符——web.xml 73
5.3.7 servlet.xml、context描述符和web.xml怎样协同工作 78
5.3.8 严密的访问控制:catlina.policy 81
5.3.9 catalina.properties:建立 在访问查询上的严密的访问控制 84
5.3.10 引导配置 84
5.3.11 配置和管理的不同点 85
5.4 tomcat 6基于web的gui配置器 85
5.5 本章小结 87
第6章 高级tomcat特性 88
6.1 阀——截取tomcat样式 88
6.2 标准阀 89
6.3 访问日志实现 90
6.4 日志文件范围 90
6.5 单点登录实现 93
6.5.1 不使用单点登录阀实现多次登录 93
6.5.2 配置单点登录阀 96
6.6 form认证器阀 96
6.7 通过请求过滤器限制访问 96
6.7.1 远程地址过滤器 97
6.7.2 远程主机过滤器 97
6.7.3 配置请求过滤器阀 97
6.7.4 请求记录器阀 98
6.8 持久会话 99
6.8.1 持久会话的必要性 99
6.8.2 配置persistent session manager 99
6.9 jndi资源配置 101
6.9.1 什么是jndi 101
6.9.2 tomcat和jndi 103
6.9.3 典型的tomcat jndi资源 103
6.9.4 通过jndi配置资源 104
6.9.5 配置jdbc datasource 106
6.9.6 配置mail会话 108
6.10 配置lifecycle listener 111
6.10.1 tomcat组件发送的生命周期事件 111
6.10.2 [listener]元素 112
6.10.3 tomcat 6 lifecycle listener配置 113
6.11 本章小结 115
第7章 web应用程序配置 117
7.1 理解web应用程序内容 117
7.1.1 公共资源 118
7.1.2 web-inf目录 119
7.1.3 meta-inf目录 120
7.2 理解部署描述符 121
7.2.1 servlet 2.3类型部署描述符 122
7.2.2 servlet 2.4/2.5类型部署描述符 135
7.3 本章小结 151
第8章 web应用程序管理 152
8.1 web应用程序示例 152
8.2 tomcat管理员程序 154
8.2.1 允许访问管理员程序 155
8.2.2 配置管理员程序 156
8.3 tomcat管理器:网络接口 158
8.3.1 显示tomcat服务器状态 159
8.3.2 管理web应用程序 159
8.3.3 部署web应用程序 161
8.4 tomcat管理器:用ant管理应用程序 162
8.5 tomcat管理器:使用http请求 167
8.5.1 列出已部署的应用程序 168
8.5.2 部署新的应用程序 169
8.5.3 在tomcat 6中安装/部署应用程序 170
8.5.4 远程部署新的应用程序 170
8.5.5 从本地路径部署新的应用程序 171
8.5.6 重载现有的应用程序 173
8.5.7 列出可用的jndi资源 174
8.5.8 列出os和jvm属性 174
8.5.9 停止现有的应用程序 175
8.5.10 启动被停止的应用程序 175
8.5.11 反部署web应用程序 176
8.5.12 显示会话统计 176
8.5.13 使用jmx代理servlet查询tomcat内核 177
8.5.14 使用jmx代理servlet设置tomcat内核 178
8.6 可能发生的错误 178
8.7 安全性考虑 179
8.8 tomcat部署器 181
8.9 本章小结 181
第9章 类装载器 182
9.1 类装载器概述 182
9.1.1 标准的java se类装载器 183
9.1.2 关于类装载器的更多行为 186
9.1.3 创建自定义类装载器 187
9.1.4 为什么tomcat需要自定义的类装载器 188
9.2 安全性和类装载器 188
9.2.1 类装载器委派 188
9.2.2 核心类限制 189
9.2.3 独立的类装载器命名空间 189
9.2.4 securitymanager 189
9.3 tomcat与类装载器 190
9.3.1 系统类装载器 191
9.3.2 endorsed standards override机制 191
9.3.3 通用类装载器 191
9.3.4 web应用程序类装载器 192
9.4 动态类重载 193
9.5 通用类装载器缺陷 194
9.5.1 在不同的类装载器中分割包 194
9.5.2 singleton 194
9.5.3 xml分析器 195
9.6 本章小结 196
第10章 http连接器 197
10.1 http连接器 198
10.1.1 tomcat 6 http/1.1连接器 198
10.1.2 高级nio连接器 202
10.1.3 comet异步io支持 203
10.1.4 本地apr连接器 203
10.2 配置tomcat支持cgi 207
10.3 配置tomcat以支持ssi 209
10.3.1 配置tomcat 6 ssi servlet 209
10.3.2 配置tomcat 6 ssi过滤器 212
10.4 在代理服务器后运行tomcat 214
10.5 性能调整 214
10.5.1 可调整的配置属性 215
10.5.2 tcp/ip栈调整技巧 216
10.6 前端tomcat 6和web服务器 216
10.7 本章小结 217
第11章 tomcat与apache http服务器 218
11.1 ajp连接器体系结构 218
11.1.1 apache的本地代码模块 219
11.1.2 apache jserv协议 220
11.1.3 ajp连接器.. 220
11.2 apache web服务器前端或独立的tomcat 220
11.3 了解tomcat worker 221
11.3.1 多个tomcat worker 221
11.3.2 使用workers.properties文件配置apache服务器 与多个tomcat worker协同工作 221
11.4 连接tomcat与apache 225
11.4.1 tomcat 6配置 226
11.4.2 apache web服务器配置 226
11.4.3 使用mod_jk模块 227
11.4.4 使用mod_proxy模块 233
11.5 为apache web服务器配置ssl 237
11.5.1 为apache配置mod_ssl 238
11.5.2 测试启用ssl的apache设置 242
11.5.3 启用ssl的apache-tomcat设置 245
11.6 tomcat负载平衡与apache 246
11.6.1 更改tomcat启动文件中的catalina_home 247
11.6.2 设置不同的ajp连接器端口 248
11.6.3 设置不同的服务器端口 248
11.6.4 禁用默认的http/1.1连接器 248
11.6.5 在standalone engine中设置jvmroute 249
11.6.6 注释 catalina engine 249
11.6.7 httpd.conf中的指令 249
11.6.8 workers.properties中的worker配置 250
11.7 测试负载平衡器 252
11.7.1 测试sticky会话 254
11.7.2 测试round-robin行为 254
11.7.3 在不同的负载系数下测试 256
11.8 本章小结 257
第12章 tomcat与iis 258
12.1 isapi插件的角色 258
12.2 连接tomcat和iis 259
12.2.1 检查tomcat与iis的安装 260
12.2.2 配置jk连接器 260
12.2.3 安装isapi插件 261
12.2.4 配置tomcat worker 261
12.2.5 配置转发请求规则 263
12.2.6 可选的url重写规则配置 264
12.2.7 为isapi插件升级windows注册表 264
12.2.8 iis 5独立模式(只针对iis 6) 267
12.2.9 在iis下创建虚拟目录 268
12.2.10 添加作为iis过滤器的isapi插件 271
12.2.11 授权作为web应用程序扩展的isapi插件(只针对iis 6) 272
12.2.12 测试最后的设置 273
12.3 故障解决技巧 274
12.4 使用ssl 275
12.5 iis和tomcat的可扩展架构 275
12.5.1 分发web和应用程序部署 276
12.5.2 多个tomcat workers 277
12.5.3 负载平衡的ajp worker 277
12.6 本章小结 277
第13章 jdbc连接 279
13.1 jdbc基础 279
13.1.1 建立和终止rdbms连接 281
13.1.2 jdbc版本演化 281
13.1.3 jdbc驱动类型 282
13.1.4 数据库连接池 282
13.1.5 连接池的问题 284
13.1.6 tomcat和jdbc演化 284
13.2 tomcat 6中的jndi模拟和连接池 285
13.3 首选的配置:jndi资源 286
13.3.1 resource标签 286
13.3.2 继承jndi资源配置 288
13.3.3 测试jndi资源配置 293
13.4 可选的jdbc配置 295
13.5 可选的连接池管理器 295
13.5.1 关于c3p0池管理器 295
13.5.2 部署c3p0池管理器 296
13.5.3 无需jndi查找获得jdbc连接 296
13.5.4 使用c3p0测试对非jndi池的访问 298
13.5.5 使用jndi映射获得连接 298
13.5.6 使用tomcat 6 jndi-comp-atible查找测试c3p0 300
13.5.7 部署第三方连接池 300
13.6 本章小结 301
第14章 tomcat安全 302
14.1 核查下载的tomcat的完整性 302
14.1.1 核查md5摘要 303
14.1.2 使用pgp签名来核查下载的文件 303
14.2 确保tomcat服务器安全安装 307
14.2.1 去除默认的应用程序 307
14.2.2 root和tomcat-docs 308
14.2.3 系统应用程序——manager和host-manager 308
14.2.4 约束系统应用程序访问安全性 308
14.2.5 删除jsp和servlet的例子 308
14.2.6 更改shutdown命令 309
14.3 使用特殊账户运行tomcat 309
14.3.1 创建一个无特权的tomcat用户 309
14.3.2 使用tomcat用户运行tomcat 310
14.4 确保文件系统安全 311
14.4.1 windows文件系统 311
14.4.2 linux文件系统 313
14.5 确保java虚拟机的安全 313
14.5.1 security manager概述 313
14.5.2 使用tomcat的security manager 317
14.5.3 推荐的security manager练习 319
14.6 确保web应用程序的安全 321
14.6.1 “认证”和“域” 322
14.6.2 域安全性 326
14.7 ssl加密 341
14.7.1 jsse 342
14.7.2 使用ssl保护资源 344
14.8 保证defaultservlet的安全 346
14.8.1 禁用目录列表 347
14.8.2 禁用invoker servlet、ssi和cgi gateway 347
14.9 主机限制 347
14.10 本章小结 348
第15章 共享的tomcat主机 349
15.1 虚拟主机概念 349
15.2 apache中的虚拟主机 350
15.2.1 实例部署方案 350
15.2.2 apache中基于ip的虚拟主机 351
15.2.3 apache中基于名称的虚拟主机 353
15.3 tomcat中的虚拟主机 357
15.3.1 实例部署方案 357
15.3.2 作为独立服务器的tomcat 359
15.3.3 使用apache的tomcat 366
15.3.4 配置apache 367
15.4 tomcat host-manager应用程序 369
15.5 虚拟主机问题:稳定性、安全和性能 370
15.6 调整tomcat中的虚拟主机设置 370
15.6.1 为每个虚拟主机创建独立的jvm 371
15.6.2 在tomcat jvm上设置内存资源限制 375
15.6.3 使用java security manager限制 377
15.7 本章小结 377
第16章 使用jmx监视和管理tomcat 379
16.1 管理需求 380
16.2 关于jmx 381
16.2.1 jmx体系结构 382
16.2.2 工具层 383
16.2.3 代理层 384
16.2.4 分布式服务层 387
16.3 jmx远程api 387
16.4 mbean介绍 387
16.4.1 标准mbean 387
16.4.2 动态mbean 388
16.4.3 模型mbean 388
16.4.4 开放mbean 388
16.5 jmx在tomcat 6中的可管理元素 388
16.5.1 可管理的tomcat 6体系结构组件 389
16.5.2 可管理的嵌入式组件 392
16.5.3 可管理的运行时数据对象 393
16.5.4 可管理的资源对象 394
16.6 通过manager proxy访问tomcat 6的jmx support 399
16.6.1 使用jmx proxy 400
16.6.2 修改mbean属性 402
16.6.3 使用jconsole gui监视 tomcat 404
16.6.4 为远程监视配置tomcat 407
16.7 本章小结 410
第17章 集群 411
17.1 集群益处 411
17.1.1 可扩展性与集群 412
17.1.2 高可靠性的必要性 412
17.2 集群基础 413
17.2.1 主-备用拓扑模式 413
17.2.2 故障转移行为模式 414
17.3 tomcat 6集群模型 415
17.3.1 负载平衡 415
17.3.2 会话共享 417
17.4 使用tomcat 6集群 420
17.4.1 tomcat 6中的会话管理 420
17.4.2 cookie和现代浏览器的角色 421
17.4.3 配置一个tomcat 6集群 421
17.4.4 通用前端:通过apache mod_jk使负载平衡 426
17.4.5 准备使用不同的后端会话共享 427
17.4.6 后端1:内存复制配置 427
17.4.7 后端2:使用共享文件存储的永久会话管理器 438
17.4.8 后端3:使用jdbc存储的永久会话管理器 440
17.4.9 测试使用jdbc永久会话管理器后端的tomcat集群 442
17.5 集群的复杂性 442
17.5.1 集群和性能 443
17.5.2 集群和响应时间 443
17.5.3 使用集群解决性能问题 443
17.6 本章小结 444
第18章 嵌入式tomcat 445
18.1 现代系统设计中嵌入式tomcat的重要性 445
18.1.1 典型地嵌入式应用程序 446
18.1.2 使用嵌入式tomcat开发 447
18.2 本章小结 456
第19章 日志 457
19.1 从tomcat 5的变革 457
19.2 log4j 458
19.2.1 log4j体系结构 458
19.2.2 log4j安装和配置 461
19.2.3 log4j入门指南 465
19.2.4 log4j高级用法 467
19.2.5 log4j性能建议 478
19.3 juli 478
19.3.1 java日志体系结构 478
19.3.2 juli入门指南 480
19.4 日志文件分析 482
19.5 本章小结 483
第20章 性能测试 484
20.1 性能概念 484
20.1.1 评估什么 484
20.1.2 可扩展性和性能 485
20.1.3 理解用户角度的性能 485
20.1.4 评估性能 486
20.2 jmeter 487
20.2.1 安装和运行jmeter 488
20.2.2 设计和理解使用jmeter的测试计划 488
20.2.3 jmeter特性 492
20.2.4 分布式负荷测试 503
20.2.5 解释测试结果 504
20.3 替代jmeter的工具 506
20.4 性能测试后的事项 507
20.5 本章小结 508
第21章 性能调优 509
21.1 性能调优的最佳实践 509
21.1.1 步骤1:建立测试台 510
21.1.2 步骤2:性能测试和确定基线 510
21.1.3 步骤3:诊断性能瓶颈 511
21.2 诊断tomcat的性能问题 512
21.3 tomcat性能调优提示 513
21.3.1 jvm的参数调优 514
21.3.2 预编译jsp 516
21.3.3 tomcat配置调优 518
21.3.4 适当的时候使用web服务器的静态内容 527
21.4 本章小结 528
附录a tomcat和集成开发环境 529
a.1 eclipse 529
a.1.1 调试eclipse中的远程web应用程序 530
a.1.2 使用sysdeo tomcat插件部署和调试本地web应用程序 532
a.1.3 使用web工具平台部署和调试web应用程序 534
a.1.4 使用apache ant和eclipse管理web应用程序部署 535
a.2 netbeans 537
a.2.1 调试netbeans中的远程web应用程序 537
a.2.2 调试netbeans内的web应用程序 539
a.3 小结 539
附录b apache ant 540
b.1 安装ant 540
b.2 ant介绍 541
b.3 ant诀窍 544
b.3.1 使用ant创建web应用程序 544
b.3.2 编译jsp 549
b.3.3 利用属性文件和命令行参数的可重用ant脚本 551
b.3.4 创建日志 552
b.3.5 通过电子邮件创建通知 553
b.3.6 ant和源控制系统 555
b.3.7 自动测试 555
b.4 持续集成 556
b.5 ant任务参考 557
b.6 小结... 560
Professional Apache Tomcat 6
- 名称
- 类型
- 大小
光盘服务联系方式: 020-38250260 客服QQ:4006604884
云图客服:
用户发送的提问,这种方式就需要有位在线客服来回答用户的问题,这种 就属于对话式的,问题是这种提问是否需要用户登录才能提问
Video Player
×
Audio Player
×
pdf Player
×