`
JBossWeek
  • 浏览: 78259 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

APR为JBoss AS加速:HTTP Connector配置

阅读更多
 
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,所有pathsession cookie将设为/。这对portlet规范的实现非常有用,但是在服务器需要同时提供多个被访问的应用时,会对性能造成很大的影响。如果没有设置,该值为false
enableLookups
该值为true时,调用request.getRemoteHost()将执行DNS查询返回远程客户端的实际主机名。该值为false,将略过DNS查询直接以字符串格式返回IP地址(因而能够提升性能)。缺省情况下,启用DNS查询。
firstReadTimeout
该属性值用于设置第一次读取request数据的超时时间。如果没有可读取的数据,socket将会被放入poller。该属性值设为0,将会提高扩展性,但是会对等待时间造成轻微的影响(查看相关的属性pollTime)。缺省值为100100ms)。注意:在Windows系统中,firstReadTimeout的实际值为500 + 设置值。
maxHttpHeaderSize
Requestresponse HTTP header的最大长度,以字节计算。如果不设置,该属性为40964k
maxKeepAliveRequests
在服务器关闭连接之前,能够pipelinedHTTP请求数量的最大值。该属性设置为1时将为禁用HTTP/1.0 keep-alive以及HTTP/1.1 keep-alivepipeline。该属性设置为-1时,将不会限制pipelined 或者 keep-alive请求的数量。如果不设置,该属性为100
maxPostSize
容器在Form URL参数解析过程中能够处理的POST最大长度,以字节计算。该属性设置为小于或等于0,限制取消。如果不设置,该属性为20971522兆)
maxSavePostSize
FORMCLIENT-CERT认证期间,容器能够保存/缓存POST数据的最大长度。这两种认证方式在用户认证之前会保存或缓存POST数据。对于CLIENT-CERT认证,在SSL握手期间POST数据将被缓存,请求处理后缓存数据将被清空。对于FORM认证,当用户被重定向到login form时,POST数据被保存。该数据一直保存到用户成功认证,或者认证请求关联的session失效。该属性为-1时,限制取消。该属性设为0,在认证期间将不保存POST数据。如果不设置,该属性值为40964k
maxThreads
Connector创建的请求处理线程的最大值,它决定了能够同时处理并发请求的最大值。如果不指定,该属性值为200
noCompressionUserAgents
逗号分割的正则表达式列表,用于匹配那些不需要使用压缩的HTTP客户端的user-agent。因为这些客户端,尽管声称支持压缩特性,但是没有完整实现。缺省值为空字符串(禁用正则表达式匹配)
pollTime
Poll call间隔。降低该属性值将会轻微地减少连接保持存活的等待时间,但是更多的poll call,将会更多地占用CPU,缺省值为5005ms
pollerSize
负责轮询存活连接的poller在一给定时间内保持的socket数量。多的连接将立即被关闭。缺省值为768,对应768个存活的连接
port
该属性值设置Connector创建等待连接SocketTCP端口号。操作系统仅允许一个服务器应用监听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 responseServer 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
 
 
 

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics