`
bdql
  • 浏览: 49900 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论
阅读更多

Tomcat的体系结构
Tomcat 6.0支持Servlet2.5和Jsp2.1规范,由一系列嵌套的组件组成。

  • Service组件Tomcat服务器的实例。一个JVM中生成一个,可以在一台服务器上配置不同的端口,从而启动多个Tomcat实例。
  • Connector组件:负责连接客户端与应用程序。接受来自客户端的请求以及向客户返回响应的结果。
  • Engine组件:引擎组件负责接受和正理来自它所属的Service中的所有的Connection的请求。每个Service中只能包含一个Engine组件。
  • Host组件:一个虚拟主机,允许在一台物理主机上布置多个web应用。
  • Context组件:一个web应用。一个虚拟主机上能够运行多个Context,它们通过各自的Context path 进行区分。

其中蓝色字体表示该组件为一个容器组件。容器组件可以包含其它组件。下面介绍一些只能嵌套在容器中的组件。

  • Global Resources全局资源组件:只能嵌套在Server组件中,用于配置Server中其他组件所用到的全局jndi资源。
  • Loader 加载组件:只能嵌套在Context组件中,用于指定一个web应用的类加载器,并将该应用程序的类和资源加载到内存中。
  • Logger 日志组件:能够借助log4j来实现日志。
  • Manager 管理器组件:只能嵌套在Context组件中。管理器组件是会话管理器,负责会话的创建和维护。
  • Realm 域组件:是一个包含用户名、密码和用户角色的数据库。
  • Resources 资源组件:只能嵌套在Context组件中,它代表的是web应用程序中的静态资源,以及它们被允许存放的格式。
  • Valve 阀组件:用请求在到达目的地前,截取该请求,并处理它。有点类似于Servlet规范中定义的过滤器。它是Tomcat专有的、目前不能用于其他的jsp/servlet容器。

 配置Tomcat

Tomcat 6服务器启动后,会读取多个XML配置文件。这些配置文件位于CATALINA_HOME/conf目录下,包含以下配置文件:

catalina.policy:配置安全管理策略。

catalina.properties:配置Tomcat的类加载器。

context.xml:配置上下文,能够所有的web应用使用。

server.xml:Tomcat的基本配置,包括服务、连接器、引擎、域、阀、主机等。

logging.properties:配置日志,指定了日志的输出ConsoleHander和FileHandler。

Tomcat-user.xml:包含用户认证和角色映射配置。Tomcat的admin和manager应用都默认使用该文件。

web.xml:默认的web应用部署描述符文件。用于Tomcat 6中自动部署web应用,如果web应用有自己的部署描述符,则内容覆盖默认部署的设置。

 

Tomcat6 在CATALINA_BASE环境变量指定的目录下找conf目录并加载配置,如果没有指定该环境变量,则在CATALINA_HOME指定的目录下找conf目录并加载配置,可以在同一台机器上配置多个并发的Tomcat只需要指定不同的配置和端口即可。

 

配置server.xml

1、 配置<server>

 

<server>的属性

classname:指定实现org.apache.catalina.Server接口的类。no

port:指定Tomcat服务器监听shutdown命令的端口。yes

shutdown:指定终止tomcat服务器运行时,发给tomcat服务器的shutdown监听端口的字符串。yes

 

<server>的子元素

<GlobalNamingResources>:服务器全局jndi资源。1个

<Service>:服务组件。1个或多个

 

2、配置全局命名资源<GlobalNamingResources>

 

<GlobalNamingResources>的子元素

<Environment>:全局变量。0或多个

<Resource>:全局jndi资源。0或多个

 

  • <Environment>的属性

description:环境入口描述。no

name:环境入口名字,相对于java:comp/env上下文。yes

override:默认为true,如果用户不想web应用部署描述符覆盖值的话,设置为false。no

type:入口类型。必须是在servlet规范中表明的合法的类型。yes

value:入口的值。yes

  • <Resource>的属性

auth:指定是web应用代码本身登录到对应的资源管理器,还是由容器代表web应用登录到资源管理器。该属性的值必须是Application或者Container。如果在web应用部署描述符中使用<resource-ref>,这个属性是必需的。如果使用<resource-env-ref>,这个属性是可选的。

desprition:资源的描述。no

name:资源的名字。yes

scope:指定通过这个resource manager得到的连接是否共享。该属性的值必须是Shareable或者Unshareable。默认情况下,假定连接是共享的。no

type:当web应用查找该资源的时候,返回java类名的全称。yes

 

Tomcat 6不再使用Tomcat 5和早期版本使用的<ResourceParams>元素。代替的是使用<Resource>元素属性提供信息。

 

 

 3、配置服务<Service>

服务组件是由多个连接器组件和一个引擎组件组成。在日志和错误信息中将会出现服务名称,用于清晰的表明该组件。

 

<Service>元素属性

classname:指定service类使用的java类名,默认是org.apache.catalina.core.StandardService。no

name:定义service名称,用于登录和管理。yes

 

<Service>元素的子元素

Connector:来自用户或其他web服务器的请求。1个或者多个

Engine:负责请求的处理。1个

 

4、配置连接器<Connector>

请求进入Tomcat的两种情况:

  • 来自前端的web服务器。可能是Apache,IIS或者其他web服务器。
  • 来自web浏览器。

 在一个引擎中可以配置多个连接器,比如一个服务器提供http服务和https服务给用户。这时需要在引擎中配置http连接器和https连接器。

在server.xml中预定义了4个最普通的连接器:

  • http连接器
  • SSL连接器
  • AJP1.3连接器,用于连接其他web服务器。
  • 代理连接器

 <Connector>元素的共同属性

address:如果服务器上有两个以上IP地址,该属性可以设定端口监听的IP地址。默认情况下,端口会监听服务器上所有IP地址。no

alloTrace:布尔值,设置为true,trace http的方法可用。默认为false。no

enableLookups:如果设为true,表示支持域名解析,可以把IP地址解析为主机名。false表示跳过域名解析,直接把IP地址作为字符串返回。默认为true。no

mastPostSize:post请求字节的最大大小。默认为2097152。no

redirectPort:指定转发端口,如果当前端口只支持non-ssl请求,在需要安全通信的情况下,自动将把客户请求转发到基于SSL的redirectPort端口。no

scheme:连接器使用的协议名称。例如可以为SSL连接器,设置属性为https。默认为http。no

secure:如果是SSL连接的话,设置为true,当调用request.getScheme()时,返回该值。默认值为false。no

URIEncoding:URI字节的解码字符编码,默认为iso-8859-1。no

useBodyEncodingForURI:表明如果contentType指定的编码用于URI查询参数,则不用URIEncoding。与Tomcat4.1.x兼容。默认为false。no

 

 HTTP<Connector>元素属性

acceptCount:设定在监听端口队列中的最大客户请求数。默认值为10,如果队列已满,客户请求将被拒绝。no

bufferSize:设定有端口创建的输入流的缓存大小,默认值为2048字节。no

compressableMimeTypes:设定http压缩mime类型,默认值为text/html,text/xml,text/plain。no

compression:设定为节省服务器带宽,使用http/1.1 GZIP压缩,可选值有off,on,fore,integer。默认值为off。no

 

 

 

 

  • 大小: 27 KB
分享到:
评论
1 楼 qwex9iao 2009-10-08  

好东西
写的这么详细 !! 

相关推荐

    Tomcat6 安装详解

    ### Tomcat6安装详解 #### 一、前言 Tomcat是一款开源的Servlet容器,能够作为Web服务器独立运行,也可以与Apache等其他Web服务器结合使用。Tomcat支持最新的Servlet和JSP规范,由Apache软件基金会负责维护。本文...

    tomcat7 tomcat 6 xshell6.zip

    【Tomcat 6详解】 Tomcat 6是基于Java EE 5规范的Web服务器,相比Tomcat 7,它不支持最新的Java EE 6或7标准。尽管如此,Tomcat 6仍然广泛应用于许多项目,尤其是那些不需要最新特性的项目。其主要特点包括: 1. *...

    tomcat安装及配置教程资源合集+Linux下安装Tomcat步骤详解+tomcat配置(免安装及安装版)之间有什么区别

    tomcat安装及配置教程tomcat安装及配置教程资源合集+Linux下安装Tomcat步骤详解+tomcat配置(免安装及安装版)之间有什么区别tomcat安装及配置教程资源合集+Linux下安装Tomcat步骤详解+tomcat配置(免安装及安装版)之间...

    Apache Tomcat 6

    **Apache Tomcat 6详解** Apache Tomcat 6是一款广泛使用的开源软件,它专注于实现Java Servlet和JavaServer Pages(JSP)技术。Tomcat作为轻量级应用服务器,是Java Web应用程序部署的首选平台,尤其适合小型到...

    tomcat安装配置详解

    tomcat安装配置详解,tomcat安装配置详解,tomcat安装配置详解

    tomcat6 配置详解

    ### Tomcat 6 配置详解 #### 一、前言 随着 Java 技术的广泛应用,Apache Tomcat 作为一款轻量级的 Web 服务器,成为开发人员部署 Java Web 应用程序的重要选择之一。本文将详细介绍如何在 MyEclipse 下配置 Tomcat...

    Tomcat配置详解

    ### Tomcat配置详解 #### 一、Tomcat内存与性能参数设置 在部署Java Web应用时,合理地配置Tomcat的内存及性能参数对于确保应用的稳定性和性能至关重要。默认的Tomcat配置往往不适合生产环境的高并发需求,因此...

    tomcat5配置详解

    本文将深入探讨Tomcat 5的启动流程、目录结构以及配置详解。 1. **Tomcat 5.0 目录结构** - **bin**: 包含操作系统特定的启动和关闭脚本,如`startup.bat`和`shutdown.bat`,分别用于启动和停止Tomcat服务。 -...

    Tomcat 6及安装说明

    **Tomcat 6详解与安装指南** Tomcat是一款开源、免费的Java应用服务器,由Apache软件基金会的Jakarta项目开发并维护。它主要用于部署和运行Java Servlet和JavaServer Pages(JSP)应用程序。Tomcat 6是其第六个主要...

    免安装版tomcat6

    【免安装版Tomcat6详解】 Tomcat6是一款由Apache软件基金会开发的开源Java Servlet容器,它是基于Java的轻量级应用服务器,主要用于运行Java Web应用程序。免安装版的Tomcat6无需经过复杂的安装过程,只需解压即可...

    MyEclipse Tomcat配置详解

    MyEclipse Tomcat配置详解

    MyEclipse_Tomcat配置详解

    MyEclipse_Tomcat 配置详解

    Tomcat与JavaWeb开发技术详解-随书源码

    《Tomcat与JavaWeb开发技术详解》一书的随书源码包含了大量的示例和练习,旨在帮助读者深入理解如何在实际开发环境中运用Tomcat服务器和JavaWeb技术。以下是对这些关键技术点的详细阐述: **Tomcat服务器** Tomcat...

    tomcat-6.rar

    【标题】"Tomcat 6详解" 【描述】Tomcat 6是Apache Software Foundation开发的开源Java Servlet容器,它是基于Java EE规范的Web应用程序运行环境。作为轻量级应用服务器,Tomcat以其小巧、高效、易用的特点,在开发...

    linux tomcat 配置详解

    Linux 下配置Tomcat 详解各位大佬敬请参考,沟通交流,

    Linux下安装Tomcat步骤详解

    ### Linux下安装Tomcat步骤详解 #### 一、前言 Tomcat是一个广泛使用的轻量级Web服务器和Servlet容器,由Apache基金会维护和支持。它支持最新的Servlet和JSP规范,并且由于其开源特性,得到了广泛的社区支持和发展...

    Tomcat详解配置

    Tomcat 详解配置 Tomcat 详解配置是指 Tomcat 服务器的配置和架构解析。本文将对 Tomcat 服务器的组成部分、结构图、配置文件等进行详细的介绍。 【Server】:Server 元素代表整个 Catalina Servlet 容器...

    tomcat并发量详解

    tomcat并发量详解 tomcat并发连接数详解

    tomcat6 server.xml 详解

    《Tomcat6 server.xml 深度解析》 在Java Web开发中,Tomcat作为一款广泛应用的开源Servlet容器,其配置文件server.xml的重要性不言而喻。本文将深入探讨Tomcat6版本中的server.xml,揭示其中的核心配置元素,帮助...

Global site tag (gtag.js) - Google Analytics