JBoss 4应用服务器Web开发人员参考手册(2):server.xml

前面介绍的jboss-service.xml文件用来控制Tomcat服务的集成,但是Tomcat有单独控制自身运行的配置文件 。这就是在jbossweb-tomcat55.sar 目录中能够找到的server.xml描述文件。

server.xml文件没有正式的DTD或者schema定义,因此我们只能说明一些主要用到的配置元素。Server是server.xml的顶级元素,它应该包含一个表示整个Web子系统的Service元素。Service包含如下的属性

  • name: 唯一标识服务的名称.

  • className: 提供服务实现的类.

2.1. Connector元素

Service元素下面应该有一个或者多个connectors元素. connector元素配置了允许客户发送请求和接收关联Service响应的通信机制. Connectors将请求转发给engine,并把结果返回请求的客户. 一个connector使用一个 Connector元素进行配置. Connectors元素的属性如下:

  • className: connector实现类的全称. 该类必须实现 org.apache.catalina.Connector接口. 嵌入服务缺省使用 org.apache.catalina.connector.http.HttpConnector, 它是HTTP connector的实现.

  • acceptCount: 当所有请求处理线程都在使用时,连入连接请求排队队列的最大长度。当排队到最大长度时,所有接收到的请求到将会被拒绝. 缺省值为10.

  • address. 对于不止一个IP地址的服务器, 该属性表示使用那个IP地址来监听指定的端口. 缺省情况下, 将使用服务器所有IP地址来监听指定的端口.

  • bufferSize: 表示connector为输入流创建的缓冲区的大小(以字节为单位). 缺省值为 2048.

  • connectionTimeout: 表示接到连接请求后,connector等待URI请求的时间(以毫秒为单位).缺省值为60000 (1分钟).

  • debug: 表示该组件产生调试日志信息的详细级别, 数字越大,产生的日志信息越详细. 如果不指定, 该属性值将被设置为 (0). 但是调试信息是否出现在日志中,还进一步取决于log4j类别org.jboss.web.tomcat.tc5.Tomcat5的threshold.

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

  • maxThreads: 表示connector创建的请求处理队列的最大值, 它决定了connector能够并发处理的最大请求数. 如果不指定,缺省值为200.

  • maxSpareThreads: 表示线程池开始关闭无用的线程之前所能允许的无用线程的最大值. 缺省值为50.

  • minSpareThreads: 表示connector启动时创建的请求处理线程的数量. 在运行过程中,connector将会确保有指定数量的空闲线程. 该属性值必须设置成小禹. 缺省值为 4.

  • port: 表示connector创建用来等待请求连接的服务器socket时使用的TCP端口号. 一个服务器应用一次只能监听特定IP地址的一个特定端口.

  • proxyName: 如果connector用在代理配置中,该属性指定request.getServerName()返回的服务器名称.

  • proxyPort: 如果connector用在代理配置中, 该属性用来指定request.getServerPort()返回的端口号.

  • redirectPort: 表示当请求被传输保密或完整性保护的内容时,非SSL请求将会被重定向的端口. 缺省值为HTTPS端口 443.

  • secure: 指定ServletRequest.isSecure方法返回值得标志,该标志表示传输通道是否安全. 缺省值为 false.

  • scheme: 指定ServletRequest.getScheme 方法访问的协议名称. 缺省值为 http.

  • tcpNoDelay: 如果该属性值为true, TCP_NO_DELAY选项将作用在服务器端socket上, 大部分情况下性能会得到提升. 缺省值为true.

你可以在Tomcat文档中找到这些属性的描述: http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/http.html.

2.2. Engine元素

每个Service有且仅有一个Engine配置. engine负责处理通过配置的connector提交给service的请求. 该嵌入服务支持的子元素包括 Host, Logger, Valve 和 Listener. 支持的属性如下:

  • className: org.apache.catalina.Engine接口实现类的全称. 如果不指定,缺省为org.apache.catalina.core.StandardEngine.

  • defaultHost: 指定用来处理host名称与Host配置不匹配请求的Host配置名称.

  • name: 指定Engine的逻辑名称. 它用于Engine输出的日志信息.

你可以在Tomcat文档中找到Engine元素的更多信息: http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/engine.html.

2.3. Host元素

一个Host元素表示一个虚拟主机配置. 虚拟主机配置是指定DNS主机名的Web应用容器. 该嵌入服务包含的子元素有: Alias, Valve 和 Listener. 支持的属性如下:

  • className: 表示用于实现org.apache.catalina.Host接口类的全称. 如果不指定,缺省为org.apache.catalina.core.StandardHost.

  • name: 表示虚拟主机的 DNS 名称. 至少配置一个Host元素作为Engine的缺省主机,名称与defaultHost一致.

Alias元素是Host元素的可选子元素. 每个Alias为上层的Host元素指定一个备用的DNS名称.

你可以在Tomcat文档中找到Host的更多信息http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/host.html.

2.4. Valve元素

Valve元素为Web容器的请求处理管道配置钩子. Valves必须实现 org.apache.catalina.Valve接口. 它只有一个需要配置的属性:

  • className: 表示org.apache.catalina.Valve 接口实现类的全称.

最常用的valve是 AccessLogValve, 它记录了连入请求的标准HTTP 访问日志. 访问日志value的className是 org.jboss.web.catalina.valves.AccessLogValue. 该value的其它属性包括:

  • directory: 表示创建访问日志文件的目录路径.

  • pattern: 表示定义日志信息格式的模式描述信息。缺省为 common.

  • prefix: 表示添加到每个日志文件名的前缀. 缺省为 access_log.

  • suffix: 表示添加到每个日志文件名的后缀. 缺省为空字符串, 意味着不添加任何后缀.

你可以在在Tomcat文档中找到Valve元素和可用valve实现的更多信息: http://jakarta.apache.org/tomcat/tomcat-5.5-doc/config/valve.html.

 

你可能感兴趣的:(JBoss,AS)