HTTP connector
使用
sendfile
处理大的静态文件(所有这些大文件都使用高性能的内核级调用通过异步方式发送),使用
socket poller
实现
keepalive
,提升服务器的扩展性。下面列出
HTTP connector
支持的属性:
Attribute
|
Description
|
acceptCount
|
当所有请求处理线程都被占用时,允许接收连接请求队列的最大长度。当队列已满时,任何收到的请求都将被拒绝。缺省值为
10.
|
address
|
对于有多个
IP
地址的服务器,该属性设置使用哪个地址监听指定的端口。缺省情况下,设置的端口用于绑定服务器的所有
IP
地址。
|
allowTrace
|
该布尔值用于启用或禁用
HTTP
协议的
TRACE
方法。如果不设置,该属性值为
false.
|
bufferSize
|
提供给连接器创建输入流所需的缓冲区大小(以字节计算)。缺省情况下,提供的缓冲区大小是
2048
字节。
|
compressableMimeType
|
该属性值是采用
HTTP
压缩的、逗号隔开的
MIME
类型列表。缺省值为
text/html,text/xml,text/plain.
|
compression
|
Connector
可以使用
HTTP/1.1 GZIP
压缩节省服务器带宽。
该参数可以接受的值为
"off" (
禁用压缩
), "on" (
开启压缩
,
但只压缩文本数据
), "force" (
强制压缩所有类型
),
或者整数值
(
等价
"on",
但是当输出的数据量超过指定的最小值时才压缩
).
如果
content-length
未知,并且
compression
设为
"on"
或者更强的值
,
输出也将被压缩
.
如果不设置
,
该值为
"off".
|
connectionLinger
|
当
Connector
使用的
socket
被关闭后,保留
socket
的时间,以毫秒计算
.
缺省值为
-1 (
禁用
socket linger).
|
connectionTimeout
|
Connector
接收连接后,等待提供请求
URI
的时间
.
缺省值为
60000 (
等于
60
秒
).
|
disableUploadTimeout
|
该标志位表明当执行
servlet
时,是否允许
servlet
容器使用一个不同的、更长的连接超时。启用该标志位将导致在上传数据时,要么使用更长的时间完成上传,要么出现更长的超时。如果不指定,该属性为
"false"
。
|
emptySessionPath
|
如果设为
true
,所有
path
的
session cookie
将设为
/
。这对
portlet
规范的实现非常有用,但是在服务器需要同时提供多个被访问的应用时,会对性能造成很大的影响。如果没有设置,该值为
false
。
|
enableLookups
|
该值为
true
时,
调用
request.getRemoteHost()
将执行
DNS
查询返回远程客户端的实际主机名。该值为
false
,将略过
DNS
查询直接以字符串格式返回
IP
地址(因而能够提升性能)。缺省情况下,启用
DNS
查询。
|
firstReadTimeout
|
该属性值用于设置第一次读取
request
数据的超时时间。如果没有可读取的数据,
socket
将会被放入
poller
。该属性值设为
0
,将会提高扩展性,但是会对等待时间造成轻微的影响(查看相关的属性
pollTime
)。缺省值为
100
(
100ms
)。注意:在
Windows
系统中,
firstReadTimeout
的实际值为
500 +
设置值。
|
maxHttpHeaderSize
|
Request
和
response
的
HTTP header
的最大长度,以字节计算。如果不设置,该属性为
4096
(
4k
)
|
maxKeepAliveRequests
|
在服务器关闭连接之前,能够
pipelined
的
HTTP
请求数量的最大值。该属性设置为
1
时将为禁用
HTTP/1.0 keep-alive
以及
HTTP/1.1
的
keep-alive
和
pipeline
。该属性设置为
-1
时,将不会限制
pipelined
或者
keep-alive
请求的数量。如果不设置,该属性为
100
。
|
maxPostSize
|
容器在
Form URL
参数解析过程中能够处理的
POST
最大长度,以字节计算。该属性设置为小于或等于
0
,限制取消。如果不设置,该属性为
2097152
(
2
兆)
|
maxSavePostSize
|
在
FORM
或
CLIENT-CERT
认证期间,容器能够保存
/
缓存
POST
数据的最大长度。这两种认证方式在用户认证之前会保存或缓存
POST
数据。对于
CLIENT-CERT
认证,在
SSL
握手期间
POST
数据将被缓存,请求处理后缓存数据将被清空。对于
FORM
认证,当用户被重定向到
login form
时,
POST
数据被保存。该数据一直保存到用户成功认证,或者认证请求关联的
session
失效。该属性为
-1
时,限制取消。该属性设为
0
,在认证期间将不保存
POST
数据。如果不设置,该属性值为
4096
(
4k
)
|
maxThreads
|
Connector
创建的请求处理线程的最大值,它决定了能够同时处理并发请求的最大值。如果不指定,该属性值为
200
。
|
noCompressionUserAgents
|
逗号分割的正则表达式列表,用于匹配那些不需要使用压缩的
HTTP
客户端的
user-agent
。因为这些客户端,尽管声称支持压缩特性,但是没有完整实现。缺省值为空字符串(禁用正则表达式匹配)
|
pollTime
|
Poll call
间隔。降低该属性值将会轻微地减少连接保持存活的等待时间,但是更多的
poll call
,将会更多地占用
CPU
,缺省值为
500
(
5ms
)
|
pollerSize
|
负责轮询存活连接的
poller
在一给定时间内保持的
socket
数量。多的连接将立即被关闭。缺省值为
768
,对应
768
个存活的连接
|
port
|
该属性值设置
Connector
创建等待连接
Socket
的
TCP
端口号。操作系统仅允许一个服务器应用监听
IP
地址的一个端口。
|
protocol
|
缺省情况下,为了使用
HTTP handler
,该属性值必须为
HTTP/1.1
。
|
proxyName
|
当
Connector
用于代理配置环境,该属性值为调用
request.getServerName()
返回的服务器名。
|
proxyPort
|
当
Connector
用于代理配置环境,该属性值设为调用
request.getServerPort()
返回的服务器端口。
|
restrictedUserAgents
|
逗号分割的正则表达式列表,用于匹配那些即使支持也不需要使用
HTTP/1.1 or HTTP/1.0
存活特性的
HTTP
客户端
user-agent
。缺省值为空字符串(禁用正则表达式匹配)
|
scheme
|
该属性值为调用
request.getScheme()
返回的协议名称。例如,在
SSL Connector
中可以将该属性值设为
https
。缺省值为
http
。
|
secure
|
该属性为
true
时,对于
Connector
(假定为
SSL Connector
)接收的请求调用
request.isSecure()
将返回
true
。缺省值为
false
。
|
sendfileSize
|
在给定时间
poller
用于异步发送静态文件所需保持的
socket
数量。多的连接在没有发送任何数据的情况下立即被关闭(导致客户端收到一个
0
字节的文件)。注意在大多数情况下,
sendfile
调用会立即返回(好像
kernel
采用“同步”方式)
,
不会使用
sendfile poller
,因此并发发送静态文件的数量要远大于该属性的指定值。该属性的缺省值为
256
。‘
|
server
|
设置用于
http response
的
Server header
。
|
tcpNoDelay
|
该值为
true
,服务器的
socket
将使用
TCP_NO_DELAY
选项,大部分情况下该选项可以提升性能。缺省值为
true
。
|
threadPriority
|
指定请求处理线程在
JVM
中的优先级,缺省值为
java.lang.Thread#NORM_PRIORITY
。
关于该优先级更详细的说明,请参考
java.lang.Thread
类的
JavaDoc
。
|
URIEncoding
|
设置用于
URI
解码的字符编码,如果不设置将使用
ISO-8859-1
|
useBodyEncodingForURI
|
该标志表示是否使用
contentType
指定的编码代替
URLEncoding
作为
URI
查询参数的编码。该设置用于与
Tomcat 4.1.x
兼容,在
Tomcat 4.1.x
中,
contentType
指定的编码或者使用
Request.setCharacterEncoding
显式设置的编码也用于
URL
参数。缺省值为
false
。
|
useIPVHosts
|
该值为
true
时,
JBoss Web
使用
request
接收到的
IP
地址来确定将请求发送到哪个
Host
。缺省值为
false
。
|
useSendfile
|
使用内核级的
sendfile
来发送静态文件。缺省值为
true
。
|
xpoweredBy
|
该值为
true
时,
JBoss Web
将通过使用规范推荐的
HTTP header
发布支持
Servlet
规范的信息。缺省值为
false
|