设为首页 收藏本站
查看: 762|回复: 0

[经验分享] 深入剖析Tomcat

[复制链接]

尚未签到

发表于 2015-8-12 09:09:48 | 显示全部楼层 |阅读模式
深入剖析Tomcat
编辑推荐
  深入剖析Tomcat 4 和Tomcat 5 中的每个组件,并揭示其内部工作原理
  适合于所有使用Java技术工作的开发人员阅读
  
基本信息

  • 原书名: How Tomcat Works:A Guide to Developing Your Own Java Servlet Container
  • 原出版社: Brainy Software


  • 作者: (美)Budi Kurniawan    Paul Deck
  • 译者: 曹旭东
  • 丛书名: 华章专业开发者丛书
  • 出版社:机械工业出版社
  • ISBN:9787111369974
  • 上架时间:2011-12-30
  • 出版日期:2012 年1月
  http://product.china-pub.com/194735
  
DSC0000.jpg
  
内容简介

  《深入剖析Tomcat》深入剖析Tomcat 4和Tomcat 5中的每个组件,并揭示其内部工作原理。通过学习《深入剖析Tomcat》,你将可以自行开发Tomcat组件,或者扩展已有的组件。 Tomcat是目前比较流行的Web服务器之一。作为一个开源和小型的轻量级应用服务器,Tomcat 易于使用,便于部署,但Tomcat本身是一个非常复杂的系统,包含了很多功能模块。这些功能模块构成了Tomcat的核心结构。《深入剖析Tomcat》从最基本的HTTP请求开始,直至使用JMX技术管理Tomcat中的应用程序,逐一剖析Tomcat的基本功能模块,并配以示例代码,使读者可以逐步实现自己的Web服务器。

目录

《深入剖析tomcat》
译者序
前 言
第1章 一个简单的web服务器1
1.1 http1
1.1.1 http请求1
1.1.2 http响应2
1.2 socket类3
1.3 应用程序5
1.3.1 httpserver类5
1.3.2 request类8
1.3.3 response类10
1.3.4 运行应用程序12
1.4 小结13
第2章 一个简单的servlet容器14
2.1 javax.servlet.servlet接口14
2.2 应用程序 116
2.2.1 httpserver1类17
2.2.2 request类19
2.2.3 response类21

.2.2.4  staticresourceprocessor类23
2.2.5 servletprocessor1类24
2.2.6 运行应用程序27
2.3 应用程序227
2.4 小结30
第3章 连接器31
3.1 stringmanager类31
3.2 应用程序33
3.2.1 启动应用程序35
3.2.2 httpconnector类36
3.2.3 创建httprequest对象38
3.2.4 创建httpresponse对象49
3.2.5 静态资源处理器和servlet处理器50
3.2.6 运行应用程序50
3.3 小结52
第4章 tomcat的默认连接器53
4.1 http 1.1的新特性54
4.1.1 持久连接54
4.1.2 块编码54
4.1.3 状态码100的使用55
4.2 connector接口55
4.3 httpconnector类56
4.3.1 创建服务器套接字56
4.3.2 维护httpprocessor实例56
4.3.3 提供http请求服务57
4.4 httpprocessor类58
4.5 request对象61
4.6 response对象62
4.7 处理请求62
4.7.1 解析连接65
4.7.2 解析请求65
4.7.3 解析请求头65
4.8 简单的container应用程序66
4.9 小结70
第5章 servlet容器71
5.1 container接口71
5.2 管道任务73
5.2.1 pipeline接口76
5.2.2 valve接口76
5.2.3 valvecontext接口76
5.2.4 contained接口77
5.3 wrapper接口77
5.4 context接口78
5.5 wrapper应用程序78
5.5.1 ex05.pyrmont.core.simpleloader类78
5.5.2 ex05.pyrmont.core.simplepipeline类79
5.5.3 ex05.pyrmont.core.simplewrapper类79
5.5.4 ex05.pyrmont.core.simplewrappervalve类80
5.5.5 ex05.pyrmont.valves.clientiploggervalve类81
5.5.6 ex05.pyrmont.valves.headerloggervalve类81
5.5.7 ex05.pyrmont.startup.bootstrap182
5.5.8 运行应用程序84
5.6 context应用程序84
5.6.1 ex05.pyrmont.core.simplecontextvalve类87
5.6.2 ex05.pyrmont.core.simplecontextmapper类87
5.6.3 ex05.pyrmont.core.simplecontext类89
5.6.4 ex05.pyrmont.startup.bootstrap289
5.6.5 运行应用程序91
5.7 小结92
第6章 生命周期93
6.1 lifecycle接口93
6.2 lifecycleevent类94
6.3 lifecyclelistener接口94
6.4 lifecyclesupport类95
6.5 应用程序97
6.5.1 ex06.pyrmont.core.simplecontext类97
6.5.2 ex06.pyrmont.core.simplecontextlifecyclelistener类100
6.5.3 ex06.pyrmont.core.simpleloader类101
6.5.4 ex06.pyrmont.core.simplepipeline类101
6.5.5 ex06.pyrmont.core.simplewrapper类101
6.5.6 运行应用程序103
6.6 小结104
第7章 日志记录器105
7.1 logger接口105
7.2 tomcat的日志记录器106
7.2.1 loggerbase类106
7.2.2 systemoutlogger类107
7.2.3 systemerrlogger类107
7.2.4 filelogger类108
7.3 应用程序111
7.4 小结112
第8章 载入器113
8.1 java的类载入器113
8.2 loader接口114
8.3 reloader接口116
8.4 webapploader类116
8.4.1 创建类载入器117
8.4.2 设置仓库118
8.4.3 设置类路径118
8.4.4 设置访问权限118
8.4.5 开启新线程执行类的重新载入118
8.5 webappclassloader类120
8.5.1 类缓存120
8.5.2 载入类121
8.5.3 应用程序121
8.6 运行应用程序124
8.7 小结124
第9章 session管理125
9.1 session对象126
9.1.1 session接口126
9.1.2 standardsession类127
9.1.3 standardsessionfacade类129
9.2 manager130
9.2.1 manager接口130
9.2.2 managerbase类131
9.2.3 standardmanager类132
9.2.4 persistentmanagerbase类133
9.2.5 persistentmanager类135
9.2.6 distributedmanager类135
9.3 存储器136
9.3.1 storebase类137
9.3.2 filestore类138
9.3.3 jdbcstore类139
9.4 应用程序139
9.4.1 bootstrap类139
9.4.2 simplewrappervalve类140
9.4.3 运行应用程序141
9.5 小结142
第10章 安全性143
10.1 领域143
10.2 genericprincipal类144
10.3 loginconfig类145
10.4 authenticator接口145
10.5 安装验证器阀146
10.6 应用程序147
10.6.1 ex10.pyrmont.core.simplecontextconfig类147
10.6.2 ex10.pyrmont.realm.simplerealm类149
10.6.3 ex10.pyrmont.realm.simpleuserdatabaserealm152
10.6.4 ex10.pyrmont.startup.bootstrap1类154
10.6.5 ex10.pyrmont.startup.bootstrap2类156
10.6.6 运行应用程序158
10.7 小结158
第11章 standardwrapper159
11.1 方法调用序列159
11.2 singlethreadmodel160
11.3 standardwrapper161
11.3.1 分配servlet实例162
11.3.2 载入servlet类164
11.3.3 servletconfig对象167
11.3.4 servlet容器的父子关系169
11.4 standardwrapperfacade类170
11.5 standardwrappervalve类171
11.6 filterdef类172
11.7 applicationfilterconfig类174
11.8 applicationfilterchain类175
11.9 应用程序175
11.10 小结177
第12章 standardcontext类178
12.1 standardcontext的配置178
12.1.1 standardcontext类的构造函数179
12.1.2 启动standardcontext实例179
12.1.3 invoke()方法183
12.2 standardcontextmapper类184
12.3 对重载的支持187
12.4 backgroundprocess()方法188
12.5 小结190
第13章 host和engine191
13.1 host接口191
13.2 standardhost类193
13.3 standardhostmapper类195
13.4 standardhostvalve类196
13.5 为什么必须要有一个host容器197
13.6 应用程序1198
13.7 engine接口199
13.8 standardengine类201
13.9 standardenginevalve类201
13.10 应用程序2202
13.11 小结203
第14章 服务器组件和服务组件204
14.1 服务器组件204
14.2 standardserver类206
14.2.1 initialize()方法206
14.2.2 start()方法207
14.2.3 stop()方法207
14.2.4 await()方法208
14.3 service接口209
14.4 standardservice类211
14.4.1 connector和container211
14.4.2 与生命周期有关的方法213
14.5 应用程序215
14.5.1 bootstrap类215
14.5.2 stopper类217
14.5.3 运行应用程序218
14.6 小结219
第15章 digester库220
15.1 digester库221
15.1.1 digester类221
15.1.2 digester库示例1225
15.1.3 digester库示例2227
15.1.4 rule类230
15.1.5 digester库示例3:使用ruleset232
15.2 contextconfig类234
15.2.1 defaultconfig()方法236
15.2.2 applicationconfig()方法238
15.2.3 创建web digester239
15.3 应用程序243
15.4 小结244
第16章 关闭钩子245
16.1 关闭钩子的例子246
16.2 tomcat中的关闭钩子250
16.3 小结250
第17章 启动tomcat251
17.1 catalina类251
17.1.1 start()方法253
17.1.2 stop()方法256
17.1.3 启动digester对象256
17.1.4 关闭digester对象258
17.2 bootstrap类259
17.3 在windows平台上运行tomcat264
17.3.1 如何编写批处理文件264
17.3.2 catalina.bat批处理文件267
17.3.3 在windows平台上启动tomcat276
17.3.4 在windows平台上关闭tomcat277
17.4 在linux平台上运行tomcat278
17.4.1 如何编写unix/linux shell脚本278
17.4.2 catalina.sh脚本283
17.4.3 在unix/linux平台上启动tomcat288
17.4.4 在unix/linux平台上关闭tomcat289
17.5  小结290
第18章 部署器291
18.1 部署一个web应用程序291
18.1.1 部署一个描述符294
18.1.2 部署一个war文件295
18.1.3 部署一个目录297
18.1.4 动态部署297
18.2 deploy接口299
18.3 standardhostdeployer类302
18.3.1 安装一个描述符303
18.3.2 安装一个war文件或目录304
18.3.3 启动context实例305
18.3.4 停止一个context实例306
18.4 小结306
第19章 manager应用程序的servlet类307
19.1 使用manager应用程序307
19.2 containerservlet接口309
19.3 初始化managerservlet309
19.4 列出已经部署的web应用程序311
19.5 启动web应用程序312
19.6 关闭web应用程序313
19.7 小结314
第20章 基于jmx的管理315
20.1 jmx简介315
20.2 jmx api316
20.2.1 mbeanserver类316
20.2.2 objectname类317
20.3 标准mbean318
20.4 模型mbean321
20.4.1 mbeaninfo接口与modelmbeaninfo接口322
20.4.2 modelmbean示例323
20.5 commons modeler库326
20.5.1 mbean描述符327
20.5.2 mbean元素示例328
20.5.3 自己编写一个模型 mbean类329
20.5.4 registry类329
20.5.5 managedbean329
20.5.6 basemodelmbean329
20.5.7 使用modeler库api330
20.6 catalian中的mbean332
20.6.1 classnamembean类333
20.6.2 standardservermbean类333
20.6.3 mbeanfactory类334
20.6.4 mbeanutil335
20.7 创建catalina的mbean335
20.8 应用程序339
20.9 小结342

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-97731-1-1.html 上篇帖子: Eclipse Tomcat插件的配置 下篇帖子: 启动Tomcat的几种方式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表