美文网首页我爱编程
How Tomcat Works中文版01

How Tomcat Works中文版01

作者: 小碗油泼素臊子 | 来源:发表于2018-05-27 18:25 被阅读0次

最近抽时间想说来把How Tomcat Works翻译看看,能翻多少算多少吧,以下是书的内容:

Introduction

综述:

欢迎来到How Tomcat Works,该书剖析Tomcat并解释了它其中名为Catalina的Servlet容器的工作原理,它免费,开源并且最为流行。Tomcat是一个复杂系统,由许多不同组件组成。那些想要学习Tomcat的人往往知道从哪开始。这本书先是整体,然后详细解释各部分,这样才会印象深刻。

         你应该阅读这个综述应该它解释了书的结构,并且给你简短介绍了所需的软件。Preparing the Prerequisite Software部分会建议你下载哪些软件,如何组织你的代码结构,ETC.

这本书写给:

这本书写给所有的JAVA工作者。

为了更好的阅读此书,你需要理解面向对象编程,servlet编程。如果你对servlet不熟悉,推荐看一本书:Budi’s JAVA for the web with servlets, jsp and ejb。为了更好的理解主题,每章都会有背景信息。

Servlet容器如何工作:

Servlet容器是个复杂系统,主要是为了servlet能响应请求,主要由三部分组成:

[if !supportLists]1.      [endif]创建一个request对象,并绑定会被servlet用到的信息,比如参数,请求头,cookies,查询字符串,URI等等。这个request对象实现了javax.servlet.ServletRequest或者javax.servlet.http.ServletRequest接口。

[if !supportLists]2.      [endif]创建一个response对象,servlet会用它来向web客户端发送响应。这个response对象实现了javax.servlet.ServletResponse或者java.servlet.http.ServletResponse对象。

[if !supportLists]3.      [endif]调用servlet的服务方法,传递request和response,在这里servlet可以阅读request的值,还可以把值写入response对象。

接下来会有对Catalina Servlet容器的详细阐述。

Catalina块状图

         Catalina是一个精致的软件,它的设计和构成很高级,并且模块化。“How a Servlet Container works”章节将会介绍其基本任务,你会发现它其实由两大部分组成:Connector和Container.

特征1:Catalina的主体部分

         Connector是连接某个请求和container的,它的任务是为了它接收的每个http请求构建一个请求对象以及,一个response对象。然后它会交给container进行加工。Container接收后会调用servlet的方法。

         请记住,这个介绍只能说是冰山一角。Container做了许多许多的事情,比如:在它调用servlet的方法之前,它必须要先加载servlet,识别用户权限,刷新用户session,所以它会用到许多不同的模块去处理也不足为奇了。比如说:管理员模块是用来管理用户session,装载模块是用来装载servlet的。

Tomcat4和Tomcat5

         这段不想翻,没啥意思

各章综述

         这本书共有20章。开始前两章是介绍。第一章解释了一个HTTP服务器是怎么工作的,第二章讲一个简单的容器。第三、四章讲connector,五~二十章讲容器的每个组件,以下是各章的概述。

         值得注意的是,每一章都会用一个示例应用去介绍相应的组件。

第一章

         作为书的开头,讲一个简单的HTTP服务器,去做一个能够正常工作的HTTP服务器,你需要了解其内部两个java类:Socket和ServerSocket。这是一个有用的提示,为了你能更好的理解服务器是如何工作的。

第二章:

         解释一个简单的servlet容器是如何工作的。这一章也会讲两个简单例子,一个能够访问静态资源,一个能够响应简单的servlet,特别是你会学到如何创建request和response对象并把它们传给相应的servlet方法。当然,你可以从浏览器来调用servlet容器中的某一个servlet。

第三章:

         讲一个Tomcat4默认connector的简化版本,这一章会做一个应用,相当于是给第四章做铺垫了。

第四章:

         讲Tomcat4的默认connector,这个connector后面因为速度问题被一个叫Coyote的connector取代了。恩。。。所以这个connector更简单,更好理解,更易于入门。

第五章:

         讨论container模块,这个模块实现了org.apache.catalina.Container接口,container有四种类型:engine,host,context,wrapper。这章用context和wrapper做了两个应用。

第六章:

         解释Lifecycle接口,这个接口定义了catalina组件的生命周期,还提供了一种发送通知给其他组件的高级方式。另外,这个接口有一个全局的开始、停止机制,可以同时开始、停止所有组件。

第七章:

         讲loggers,是一个记录错误和其他信息的模块。

第八章:

         讲loaders,是catalina的重要部分,负责加载servlet和web应用会用到的其他类。同时,这章也讲了如何去重新加载servlet。

第九章:

         讲manager,管理会话的组件。许多不同类型的manager,以及如何持久化存储会话对象。在这章结尾,会教你做一个简单应用,用标准版manager,跑一个servlet,并且用会话对象去存值。

第十章:

         讲web应用安全,主要是限制访问某个部分的内容,你会学到:principles,roles,login config,authenticators等等。你会写两个应用,有权限过滤,用到StandardContext,有基本的用户权限功能。

第十一章:

         详细解释StandardWrapper,在web应用中它用来一个servlet。这章会特别提到怎么过滤,servlet的方法怎么被调用。这章的应用会用StandardWrapper做。

第十二章:

         详细解释StandardContext,它代表一个web应用。讨论一个StandardContext如何配置,当每个HTTP请求时它内部是如何工作的,它是如何支持自动重载的,以及如何与关联组件如何分享定时任务线程。

第十三章:

         讲StandardEngine和StandardHost。

第十四章:

         Server和service组件,server负责启动和停止整个servlet容器,service负责掌控住一个容器和多个connector。这章的应用会告诉我们怎么用server和service.

第十五章:

         通过digester解析一个web应用的配置,digester是apache基金会的一个牛逼项目。它可以通过digester库把XML里面的节点解析成java对象。然后会介绍StandardContext的配置对象ContextConfig.

第十六章:

         Tomcat的结束回调配件,通常在这个时候我们会对Tomcat做一次大扫除。

第十七章:

         介绍用批处理文件或者终端命令来控制Tomcat的启停。

第十八章:

         介绍deployer,用来部署和安装web应用的组件。

第十九章:

         介绍一个特殊接口:ContainerServlet,它提供了一种访问catalina内部对象的方式。尤其是,还要介绍Manager应用,用来管理部署好的web应用。

第二十章:

         介绍JMX,以及Tomcat如何通过MBeans来管理其内部的对象。

每一章的app

         每一章都会有一到两个app,来介绍catalina的某一个组件。通常,你会看到一个简化版本,或者是如何去用catalina组件的一段代码。所有类和接口都不会超过上一章的范围。

好了,请把要用的软件安装好。

相关文章

网友评论

    本文标题:How Tomcat Works中文版01

    本文链接:https://www.haomeiwen.com/subject/ewyvjftx.html