`
cuijiemin
  • 浏览: 265326 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Tomcat6优化,server.xml属性说明

    博客分类:
  • J2EE
阅读更多
Tomcat6优化,server.xml属性说明
2010年04月16日 星期五 14:52
Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,目前最新版本是6.x,相对5.x性能提升很多,主要优化了内存使用,增强IO能力,重新构造集群功能。

 

     近期对Tomcat6.x作深入学习,参考上述声明的Tomcat全攻略,由于笔者是2001年针对Tomcat4.x所写,故参考之并针对Tomcat6.x做了总结,形成此篇学习笔记,希望对学习的人有所帮助,本文涵盖了:Tomcat目录、Server.xml元素讲解,数据库连接池配置、线程池配置、虚拟目录配置。关于如何下载、安装、运行Tomcat略,请google,相信有详细的文章讲述。

 

 

tomcat的目录结构如下:

 

目录名

 

简介

 

bin

 

存放启动和关闭tomcat脚本

 

conf

 

包含不同的配置文件,server.xml(Tomcat的主要配置文件)和web.xml

 

work

 

存放jsp编译后产生的class文件

 

webapp

 

存放应用程序示例,以后你要部署的应用程序也要放到此目录

 

logs

 

存放日志文件

 

lib

 

这三个目录主要存放tomcat所需的jar文件

 

 

 

server.xml配置简介

 

 

元素名

 

属性

 

解释

 

server

 

port

 

指定一个端口,这个端口负责监听关闭tomcat的请求

 

shutdown

 

指定向端口发送的命令字符串

 

GlobalNamingResources

 

 

服务器的全局JNDI资源,可以有子标签<Resource></Resource>

 

Executor(线程池,一个或多个Connector可以共享此线程池)

 

name

 

线程池名称,名称必须唯一

 

namePrefix

 

线程的名字前缀,用来标记线程名字的,这样每个线程就用这个前缀加上线程编号了,比如 catalina-exec-1 、catalina-exec-2

 

maxThreads

 

允许的最大线程池里的线程数量,默认是200,大的并发应该设置的高一些,反正只是限制而已,不占用资源

 

minSpareThreads

 

最小的保持活跃的线程数量,默认是25.这个要根据负载情况自行调整了。太小了就影响反应速度,太大了白白占用资源

 

maxIdleTime

 

最小的保持活跃的线程数量,默认是25.这个要根据负载情况自行调整了。太小了就影响反应速度,太大了白白占用资源

 

threadPriority

 

线程的等级。默认是Thread.NORM_PRIORITY

 

service

 

name

 

指定service的名字

 

Connector (表示客户端和service之间的连接)

 

port

 

指定服务器端要创建的端口号,并在这个断口监听来自客户端的请求

 

minProcessors

 

服务器启动时创建的处理请求的线程数

 

maxProcessors

 

最大可以创建的处理请求的线程数

 

enableLookups

 

如果为true,则可以通过调用request.getRemoteHost()进行DNS查询来得到远程客户端的实际主机名,若为false则不进行DNS查询,而是返回其ip地址

 

redirectPort

 

指定服务器正在处理http请求时收到了一个SSL传输请求后重定向的端口号

 

acceptCount

 

指定当所有可以使用的处理请求的线程数都被使用时,可以放到处理队列中的请求数,超过这个数的请求将不予处理

 

connectionTimeout

 

指定超时的时间数(以毫秒为单位)

 

Engine (表示指定service中的请求处理机,接收和处理来自Connector的请求)

 

name

 

 

defaultHost

 

指定缺省的处理请求的主机名,它至少与其中的一个host元素的name属性值是一样的

 

jvmRoute

 

 

host (表示一个虚拟主机、并且可以包含Context子节点配置虚拟目录)

 

name

 

指定主机名

 

appBase

 

应用程序基本目录,即存放应用程序的目录

 

unpackWARs

 

如果为true,则tomcat会自动将WAR文件解压,否则不解压,直接从WAR文件中运行应用程序

 

autoDeploy

 

自动部署

 

xmlValidation

 

是否验证xml

 

xmlNamespaceAware

 

 

Realm (表示存放用户名,密码及role的数据库)

 

className

 

指定Realm使用的类名,此类必须实现org.apache.catalina.Realm接口

 

Context(host子节点配置虚拟目录)

 

path

 

虚拟目录名称

 

docBase

 

物理路径

 

Debug

 

Debug模式

 

Reload

 

True 重新加载,修改后自动加载

 

上面我们讲述了server .xml个元素的含义,下面我们给出详细示例

 

Tomcat数据库连接池配置如下:

server.xml配置Resource

Xml代码 Tomcat6.x目录与server.xml详解 - 冰木木 - 舒畅心情

 

  1. <Resource name="jdbc/ExampleDB" auth="Container" type="javax.sql.DataSource"  
  2.                maxActive="100" maxIdle="30" maxWait="10000"  
  3.                username="APP" password="APP" driverClassName="org.apache.derby.jdbc.ClientDriver"  
  4.                url="jdbc:derby://localhost:1527/springside-example;create=true"/>  

 

<Resource name="jdbc/ExampleDB" auth="Container" type="javax.sql.DataSource" maxActive="100" maxIdle="30" maxWait="10000" username="APP" password="APP" driverClassName="org.apache.derby.jdbc.ClientDriver" url="jdbc:derby://localhost:1527/springside-example;create=true"/>

 

context.xml文件增加:

 

Xml代码 Tomcat6.x目录与server.xml详解 - 冰木木 - 舒畅心情

 

  1. <WatchedResource>WEB-INF/web.xml</WatchedResource>  
  2.        
  3.      <ResourceLink name="jdbc/ExampleDB"    global="jdbc/ExampleDB"    type="javax.sql.DataSource"/>  
  4.       

 

<WatchedResource>WEB-INF/web.xml</WatchedResource> <ResourceLink name="jdbc/ExampleDB" global="jdbc/ExampleDB" type="javax.sql.DataSource"/>

 

Tomcat共享线程池配置:

取消Executor注释,修改连接数至自己合适的数值既可。

 

Xml代码 Tomcat6.x目录与server.xml详解 - 冰木木 - 舒畅心情

 

  1. <Executor name="tomcatThreadPool" namePrefix="catalina-exec-"   
  2.         maxThreads="200" minSpareThreads="100" maxIdleTime="60000"/>  

 

<Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="200" minSpareThreads="100" maxIdleTime="60000"/>

 

executor="tomcatThreadPool" 标明此连接使用上面配置的名称为tomcatThreadPool的连接池,无属性共享连接不会生效 protocol表示使用的是 http协议 端口号为8080

Java代码 Tomcat6.x目录与server.xml详解 - 冰木木 - 舒畅心情

 

  1. <Connector port="8080" protocol="HTTP/1.1" redirectPort="8443"   
  2.                 connectionTimeout="20000"   
  3.                 executor="tomcatThreadPool"  
  4.                 acceptCount="100"  
  5.                 useBodyEncodingForURI="true"  
  6.                 enableLookups="false"  
  7.                  />  

 

<Connector port="8080" protocol="HTTP/1.1" redirectPort="8443"                connectionTimeout="20000"                executor="tomcatThreadPool"               acceptCount="100"               useBodyEncodingForURI="true"               enableLookups="false"                />

  

虚拟目录配置:

在<host></host>之间增加如下

 

<!-- 配置虚拟目录,例如:%09http://localhost:8080 -->

 

Xml代码 Tomcat6.x目录与server.xml详解 - 冰木木 - 舒畅心情

 

  1. <Context path="/" docBase="D:\workspace\code\HBJH\web"></Context>  

 

<Context path="/" docBase="D:\workspace\code\HBJH\web"></Context>

分享到:
评论
1 楼 zhangna307 2011-09-22  
thanks.

相关推荐

    Tomcat 服务器server.xml的关键参数配置

    ### Tomcat 服务器server.xml的关键参数配置 #### 一、配置Tomcat服务器访问端口 ...总之,通过对`server.xml`文件中的关键参数进行合理的配置,可以有效地管理和优化Tomcat服务器的性能,并确保应用程序的正常运行。

    tomcat6 server.xml 详解

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

    tomcat服务器的Server.xml配置详解.docx

    Tomcat作为一款广泛应用的开源轻量级Web应用服务器,其核心配置文件Server.xml对于服务器的管理和优化至关重要。本文将深入解析Server.xml的结构和配置要素,帮助读者更好地理解和操作Tomcat服务器。 Server.xml...

    tomcat 配置文件 server.xml配置

    对于任何希望深入理解和优化Tomcat性能的开发者来说,熟悉并掌握`server.xml`的配置细节至关重要。 #### Server标签 `&lt;Server&gt;`标签是`server.xml`的顶级标签,它定义了整个Tomcat服务器的生命周期管理。其中两个...

    Tomcat的server.xml文件

    总之,`server.xml`是Tomcat的配置心脏,理解和掌握其配置有助于优化服务器性能,解决各种运行问题,以及实现定制化的部署需求。对于Java Web开发者来说,深入学习`server.xml`不仅能够提升工作效率,也是提升技术...

    tomcat_server.xml_配置详解

    本文将详细解析`server.xml`中的关键元素、属性及其含义,帮助读者深入理解Tomcat的工作机制。 1. `&lt;Server&gt;`元素 `&lt;Server&gt;`元素是整个Tomcat实例的顶级容器,它由`org.apache.catalina.Server`接口定义。此元素...

    tomcat的server.xml标签全解析.

    理解并熟练掌握`server.xml`的配置是每个Tomcat管理员的基本技能,它能帮助你更好地管理和优化你的Web服务环境。当遇到性能问题、安全需求或其他高级功能时,对`server.xml`的深入理解和适当调整将变得尤为关键。...

    tomcatserver.xml配置详解.pdf

    Tomcat server.xml文件的配置直接影响到Tomcat服务器的行为和性能,了解每个配置项的含义及作用是进行Tomcat优化和问题排查的基础。通过适当配置server.xml,可以实现对Tomcat服务器的个性化管理,如增加安全性、...

    tomcat-server.xml详解

    Tomcat作为一款广泛应用的Java EE服务器,其核心配置文件`tomcat-server.xml`对于优化服务器性能、管理和监控服务至关重要。本文将详细解析`tomcat-server.xml`中的主要元素和属性,帮助读者深入理解Tomcat的内部...

    tomcat server.xml配置详解

    `server.xml`是Tomcat的核心配置文件,控制着Tomcat的启动、运行和停止,对性能优化、安全性提升等方面具有至关重要的作用。 ### `server`元素 `server`元素位于`server.xml`的最顶层,是Tomcat实例的根节点,由`...

    tomcat server.xml的典型配置

    在本文中,我们将深入探讨`URIEncoding="utf-8"`这一配置项,并围绕Tomcat优化展开讨论。 `URIEncoding`参数是Tomcat连接器(Connector)配置中的一个重要元素,用于指定请求URI的字符编码。默认情况下,Tomcat不...

    tomcat中server.xml详解

    理解并熟练配置`server.xml`对于优化Tomcat服务器性能、调整资源分配以及实现特定功能至关重要。在实际操作中,应根据具体需求对`server.xml`进行适当修改,同时注意保持文件的整洁和可读性,以方便后期维护。通过对...

    tomcat server.xml 配置

    ### Tomcat Server.xml 配置详解 #### 一、引言 在当今互联网技术领域,Apache Tomcat作为一款开源的应用服务器,在Java Web开发中扮演着举足轻重的角色。它支持运行Servlet和JSP,是Java Web应用部署的常用平台之...

    Tomcat配置文件server.xml说明[定义].pdf

    在Apache Tomcat服务器中,`server.xml`是一个至关重要的配置文件,它定义了服务器的结构和行为。这个文件包含了Tomcat容器的各个组件,如Server、Service、Engine、Host和Context等,它们协同工作以处理HTTP请求并...

    Tomcat server.xml配置文件详解

    总之,`server.xml` 文件是 Tomcat 配置的核心,通过精细调整这些元素的属性,我们可以定制化 Tomcat 服务器的行为,以满足特定的应用场景需求。理解并熟练掌握 `server.xml` 的配置是优化和管理 Tomcat 服务器性能...

    详细解读server.xml文件

    理解并熟练掌握`server.xml`的配置,能够帮助你更好地优化Tomcat服务器的性能,提高应用的响应速度,以及解决各种服务器相关的配置问题。通过阅读《解读server.xml.pdf》文档,你可以获得更详细的解释和示例,进一步...

    tomcat server.xml元素详细说明

    server.xml是Tomcat服务器的灵魂,正确理解和灵活配置这些元素是优化Tomcat性能的关键。通过对上述元素的详细解析,希望读者能够更好地掌握Tomcat服务器的配置技巧,为构建高效、稳定的Web应用打下坚实的基础。

    server.xml常用配置详解.docx

    `server.xml` 文件是 Tomcat 服务器的核心配置文件之一,主要用于控制 Tomcat 的运行。此外,在 JBoss 服务器中,其 Web 容器实际上是基于 Tomcat 的封装,因此 `server.xml` 也扮演着重要的角色。通常情况下,可以...

    Tomcat 的 server.xml 文件详解

    深入理解 `server.xml` 文件对于优化和定制 Tomcat 部署至关重要。 1. **文件头部注释**: - 版本声明:`&lt;?xml version="1.0" encoding="UTF-8"?&gt;`,指示这是一个 XML 文件及其编码方式。 - 许可声明:这段注释...

    tomcat_server.xml_配置详解.doc

    本文将对`server.xml`中的关键元素及其属性进行详尽解读,帮助开发者更好地理解和掌握Tomcat的配置机制。 ### 1. &lt;Server&gt; 元素:容器的顶层定义 `&lt;Server&gt;`元素是Tomcat实例的最高层级元素,代表整个容器。它由`...

Global site tag (gtag.js) - Google Analytics