- 浏览: 697134 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (272)
- Struts1.x (7)
- 事务 (2)
- Hibernate (11)
- 数据库 (14)
- JavaScript&Ajax (43)
- JSP&Servlet (2)
- Flex (1)
- 其它 (9)
- Java (22)
- 框架集成 (1)
- WebService (3)
- Tomcat (3)
- 加密和安全登录 (13)
- 基于原型的JavaScript (0)
- JavaDoc和Java编码规范 (3)
- CAS (1)
- 加密 (1)
- Axis2 (10)
- Ext2.x (3)
- SSH整合 (2)
- Ext (0)
- 正则表达式 (1)
- 设计模式 (4)
- 对象序列化技术 (3)
- CVS (2)
- Struts2 (6)
- Spring 2.x (7)
- Spring Security (2)
- Java 课程 (20)
- 程序员之死 (1)
- 软件测试 (6)
- UML (5)
- NetBeans (1)
- cxf (1)
- JMS (13)
- 设计 (5)
- ibatis2.x (3)
- Oracle (1)
- WebSphere (7)
- 概要设计 (1)
- DB2 (10)
- PowerDesigner (0)
- 软件工程 (5)
- rose (1)
- EA (1)
- LDAP (7)
- Portal&Portlet (3)
- MQ (10)
- ESB (4)
- EJB (2)
- JBoss (2)
最新评论
-
typeRos:
只有配置文件,没有代码么大神
Spring实现IBMMQ的JMS消息发布/订阅模式 -
panamera:
如果ActiveMQ服务器没有启动,这个时候消息生产者使用Jm ...
Spring JMSTemplate 与 JMS 原生API比较 -
lian819:
顶1楼, 引用文件, 配置属性, 太方便了
EXTJS 同步和异步请求 -
wilhard:
说得清楚明白
<%@ include file=""%>与<jsp:include page=""/>区别 -
刘琛颖:
总结的很好。受益了
javascript 父窗口(父页面)— 子窗口 (子页面)互相调用的方法
Tomcat的体系结构
Tomcat服务器是由一系列可配置的组件构成的,其中核心组件是Catalina Servlet容器,它是所有其他Tomcat组件的顶层容器。Tomcat各组件之间的层次关系如图1-20所示。
|
图1-20 Tomcat组件之间的层次结构 |
我们下面简单介绍一下各组件在Tomcat服务器中的作用。
(1)Server
Server表示整个的Catalina Servlet容器。Tomcat提供了Server接口的一个默认实现,这通常不需要用户自己去实现。在Server容器中,可以包含一个或多个Service组件。
(2)Service
Service是存活在Server内部的中间组件,它将一个或多个连接器(Connector)组件绑定到一个单独的引擎(Engine)上。在Server中,可以包含一个或多个Service组件。Service也很少由用户定制,Tomcat提供了Service接口的默认实现,而这种实现既简单又能满足应用。
(3)Connector
连接器(Connector)处理与客户端的通信,它负责接收客户请求,以及向客户返回响应结果。在Tomcat中,有多个连接器可以使用。
(4)Engine
在Tomcat中,每个Service只能包含一个Servlet引擎(Engine)。引擎表示一个特定的Service的请求处理流水线。作为一个Service可以有多个连接器,引擎从连接器接收和处理所有的请求,将响应返回给适合的连接器,通过连接器传输给用户。用户允许通过实现Engine接口提供自定义的引擎,但通常不需要这么做。
(5)Host
Host表示一个虚拟主机,一个引擎可以包含多个Host。用户通常不需要创建自定义的Host,因为Tomcat给出的Host接口的实现(类StandardHost)提供了重要的附加功能。
(6)Context
一个Context表示了一个Web应用程序,运行在特定的虚拟主机中。什么是Web应用程序呢?在Sun公司发布的Java Servlet规范中,对Web应用程序做出了如下的定义:“一个Web应用程序是由一组Servlet、HTML页面、类,以及其他的资源组成的运行在Web服务器上的完整的应用程序。它可以在多个供应商提供的实现了Servlet规范的Web容器中运行”。一个Host可以包含多个Context(代表Web应用程序),每一个Context都有一个唯一的路径。用户通常不需要创建自定义的Context,因为Tomcat给出的Context接口的实现(类StandardContext)提供了重要的附加功能。
下面我们通过图1-21来帮助读者更好地理解Tomcat服务器中各组件的工作流程。
要了解这些组件的其他信息,可以看下面的页面:
%CATALINA_HOME%\webapps\docs\architecture\overview.html |
(点击查看大图)图1-21 Tomcat各组件的工作流程 |
在Tomcat中,提供了各组件的接口及其实现类,如果你要替换Tomcat中的某个组件,只需要根据该组件的接口或类的说明,重写该组件,并进行配置即可。图1-22是Tomcat各组件的类图。
(点击查看大图)图1-22 Tomcat的组件类图 |
在类图的接口名或类名下面是该接口或该类所在的包,这些接口和类都在%CATALINA_HOME%\lib\catalina.jar文件中。对Tomcat服务器的实现感兴趣的读者,可以从http://tomcat.apache.org/download-60.cgi上下载Tomcat的源代码。
由于Apache软件基金会并不是一个商业性的组织,所以文档更新的速度有时候跟不上版本更新的速度。在Tomcat 6.0.16中,就可以发现文档与其源码实现有不一致的地方。从Tomcat 5.5开始,Tomcat的实现中就已经去掉了org.apache.catalina.Connector接口及其相关的实现类,而直接以org.apache.catalina.connector.Connector类来代替。我们在看Tomcat的文档时,最好结合其API文档一起看,这样才能保证了解的信息是完整和准确的。
发表评论
-
java:comp/env 解释
2012-07-13 13:40 10761关于获取数据源的语法,大体有(javax.sql.D ... -
java.naming.factory.url.pkgs 的用途
2012-06-28 09:48 1730原文地址:http://blog.csdn.net/l ... -
解析 HTTP
2010-11-14 18:09 47833、HTTP 请求 客户端通过发送 HTTP 请求向服务器 ... -
Tomcat server.xml 文件
2010-11-07 17:21 1199Tomcat 服务器有一系列可配置的组件构成,这些组件 ... -
第十四课时: 输入/输出1
2010-10-30 20:48 1289Java 的 IO 支持通过 java.io 包 ... -
第十七课时: 网络编程
2010-10-18 22:00 1117一. 网络编程的基础知 ... -
第十六课时: 多线程
2010-10-07 14:24 951一. 继承 Thread 类创建线程 通过继承 Thread ... -
第十四课时:输入/输出2
2010-09-05 15:54 1221... -
第十三课时:Annotation 注释
2010-08-29 15:55 1087从 JDK 5.0 开始,Java 增加了对元数据 ( ... -
第十二课时:JDBC 编程 (2)
2010-08-28 13:13 846示例: import java.sql.*; impor ... -
第十二课时:JDBC 编程 (1)
2010-08-08 15:52 2066一、SQL 语句基础 SQL 的全称是 Structured ... -
第11课时:异常处理
2010-07-25 16:51 1110一、异常处理机制 1、使用 try...catch 捕获异常 ... -
第十课时:与运行环境交互
2010-07-24 06:03 752一、与用户交互 1、使用 Scanner 获取键盘输入 获 ... -
第九课时:泛型
2010-07-11 17:00 1358一、定义泛型接口、类 JDK 1.5 改写了 ... -
第六课时:面向对象(5)—— 2010年05月22日
2010-07-04 13:45 957一、内部类 在某些情况下,我们把一个类放在另一个类的 ... -
第三课时:面向对象(2)
2010-05-02 23:20 1370一、成员变量与局部变量 二、类的继 ... -
第二课时:数组、面向对象(1)
2010-05-02 23:19 930一、数组 1、 ... -
第四课时:面向对象(3)
2010-05-02 23:17 875一、基本数据类型的包装类 1、 基本数据类型和包装 ... -
第一课时提纲:Java 基础(GC)
2010-03-22 23:22 1172一、Java 命名规范 1、对常量的命名规范: ...
相关推荐
NULL 博文链接:https://gaojingsong.iteye.com/blog/2389970
Apache Tomcat 是一款非常著名的开源 Servlet/JSP 容器。 Apache Tomcat 是一款非常著名的开源 Servlet/...让我们先来浏览一下 Tomcat 体系结构中的六个主要概念: Server Service Engine Host Connector Context
主要介绍了Tomcat体系结构与插件配置教程图解,包括发布程序的过程和tomcat服务器体系结构,需要的朋友可以参考下
tomcat目录结构、tomcat启动分析、tomcat体系结构、jsp运行原理
1.1. Windows下Apache与Tomcat的... Tomcat体系结构与JK插件的工作 操作: windows下tomcat与IIS的集成 windows下tomcat与Apache的集成 Linux下tomcat与Apache的集成(Vmware下) 内容详细,含英文原文和中文翻译。
1.Tomcat产品介绍 2.Tomcat安装 3.Tomcat配置、部署、管理 4.Tomcat体系结构 5.Tomcat优化 6.Tomcat安全保护 7.Tomcat负载均衡和集群
《深入剖析Tomcat》以Tomcat 4和Tomcat 5两个版本为基础,从建立一个最简单的连接开始,深入介绍Tomcat的体系结构。从连接器到最终的JMX管理,循序渐进,层层深入。每一章有配有相关代码,既是对理论内容的具体展现...
讲述了体系结构风格中数据流风格当中的一种—主程序与子过程
Apache Tomcat 3.3是Apache Tomcat 3.x体系结构的最新延续; 它比3.2.4更先进,这是“老”的生产质量释放。 版本3.2.4是“旧的”生产质量版本,现在仅在维护模式。 版本3.1.1是旧版本。 所有的Apache Tomcat 3.X版本...
java本论文主要研究JSP技术以及JSP技术实现基于Web的三层体系结构的应用,实现了动态网页对数据库的查询、统计、更新等功能。目的是应用计算机网络、数据库、Internet技术、以Tomcat为服务器,JSP、JAVA作为主要开发...
KWIC问题的具体代码实现,包括管道过滤器、基于事件调用、主程序子过程等共五种体系结构风格
系统基于B/S 多层Web 体系结构,在J2EE 平台上利用开源架构JSF、Spring、 Hibernate 等技术进行开发。按照软件工程方法,对造纸生产过程进行需求分析。使 用UML 建模工具,通过类图、用例图等对系统进行总体设计。...
密码体系结构中的标准类来执行解密。 因此,安装在 JVM 中的所有算法都可以使用。 默认情况下,所有 JVM 供应商都必须支持 . 有关任何进一步的算法支持,请查阅供应商的文档。 该库也可以从命令行运行,以生成在 ...
MicroService体系结构示例:解决简单算术表达式运算((a+b) * (a+b)) 它能做什么? 该微服务与其他2个微服务(MicroServiceAdd和MicroServiceMultiply)进行交互以解决表达式。 想法是查看2个微服务如何相互交互...
一个基于J2EE的B/S结构的简单学生管理系统的实现,想学习的可以进来看一下。
本实验大纲包含以下实验:MyEclipse+Tomcat开发环境的安装与配置、HTML静态网页的设计、Servlet应用技术、JSP的基本语法练习、MySQL数据库与表的创建、用Struts2实现MVC模式、Hibernate框架配置及开发、HQL语句的...
其全新的Struts 2的体系结构与Struts 1的体系结构的差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与Servlet API完全脱离开,所以Struts 2可以理解为...
简介场景组件设置环境创建数据库在Eclipse中配置Tomcat服务器在Eclipse中创建Web项目ncarUsers从文章下载导入文件实现域对象实现数据访问层实现业务逻辑层实现表示层客户机应用程序在Eclipse中运行应用程序内部原理...