属性
|
描述
|
acceptCount
|
使用所有可能的请求处理线程时,传入连接请求的最大队列长度。队列已满时收到的任何请求都将被拒绝。默认值为100。
|
acceptorThreadCount
|
用于接受连接的线程数。在多CPU机器上增加此值,尽管您实际上并不需要超过此值2 。另外,在有许多非保持活动连接的情况下,您可能还希望增加此值。默认值为 1 。
|
acceptorThreadPriority
|
受体线程的优先级。用于接受新连接的线程。默认值为5 (java.lang.Thread.NORM_PRIORITY 常数的值 )。有关java.lang.Thread 此优先级的含义的更多详细信息,请参见该类的JavaDoc 。
|
address
|
对于具有多个IP地址的服务器,此属性指定将使用哪个地址在指定端口上进行侦听。默认情况下,连接器将侦听所有本地地址。除非JVM被配置以其他方式使用的系统属性,基于Java连接器(BIO,NIO)将当与任一被配置在两个IPv4和IPv6地址听0.0.0.0 或:: 。如果配置为0.0.0.0 ,则APR /本机连接器将仅侦听IPv4地址,如果配置为 ,则将侦听IPv6地址和等效的IPv4地址:: 。
|
allowHostHeaderMismatch
|
默认情况下,Tomcat将允许在请求行中指定主机但在主机标头中指定其他主机的请求。可以通过将此属性设置为来启用此检查false 。如果未指定,则默认为true 。
|
allowedTrailerHeaders
|
默认情况下,Tomcat在处理分块输入时将忽略所有尾部标头。对于要处理的标题,必须将其添加到此逗号分隔的标题名称列表中。
|
bindOnInit
|
控制何时绑定连接器使用的套接字。默认情况下,在启动连接器时绑定它,而在销毁连接器时取消绑定。如果设置为false ,则套接字将在连接器启动时绑定,而在连接器停止时取消绑定。
|
compressibleMimeType
|
该值为逗号分隔的MIME类型列表,可以对其使用HTTP压缩。默认值为 text/html,text/xml,text/plain,text/css,text/javascript,application/javascript 。
|
compression
|
所述连接器可在试图节省服务器的带宽使用HTTP / 1.1 GZIP压缩。该参数的可接受值为“ off”(禁用压缩),“ on”(允许压缩,这将导致压缩文本数据),“ force”(在所有情况下均强制压缩)或数字整数值(即等效于“ on”,但指定在压缩输出之前的最小数据量)。如果内容长度未知,并且压缩设置为“ on”或更具攻击性,则输出也将被压缩。如果未指定,则此属性设置为“ off”。
注意:在使用压缩(节省带宽)和使用sendfile功能(节省CPU周期)之间需要权衡。如果连接器支持sendfile功能(例如NIO连接器),则使用sendfile将优先于压缩。症状是大于48 Kb的静态文件将以未压缩的形式发送。您可以通过设置useSendfile 连接器的属性来关闭sendfile,如下所述,或者在DefaultServlet的配置中(默认值 conf/web.xml 或web.xml Web应用程序的)更改sendfile的使用阈值 。
|
compressionMinSize
|
如果压缩设置为“ on”,则此属性可用于指定压缩输出之前的最小数据量。如果未指定,则此属性默认为“ 2048”。
|
connectionLinger
|
关闭连接器时,此连接器使用的插座停留的秒数 。默认值是-1 禁用套接字延迟。
|
connectionTimeout
|
接受连接后,此连接器将等待要显示的请求URI行的毫秒数。使用值-1表示没有(即无限)超时。默认值为60000(即60秒),但请注意,Tomcat附带的标准server.xml将其设置为20000(即20秒)。除非disableUploadTimeout设置为false ,否则在读取请求正文(如果有)时也会使用此超时。
|
connectionUploadTimeout
|
指定在进行数据上载时要使用的超时(以毫秒为单位)。仅当disableUploadTimeout设置为时,此选项才生效 false 。
|
disableUploadTimeout
|
此标志允许Servlet容器在数据上载期间使用不同的(通常更长的)连接超时。如果未指定,则将此属性设置为true 禁用此较长的超时。
|
executor
|
对Executor 元素中名称的引用。如果设置了此属性,并且命名的执行程序存在,则连接器将使用该执行程序,所有其他线程属性将被忽略。请注意,如果未为连接器指定共享执行器,则连接器将使用私有的内部执行器来提供线程池。
|
executorTerminationTimeoutMillis
|
私有内部执行器在继续执行停止连接器的过程之前将等待请求处理线程终止的时间。如果未设置,则0 BIO连接器的默认值为(零),5000 NIO和APR / native连接器的默认值为(5秒)。
|
keepAliveTimeout
|
该连接器在关闭连接之前将等待另一个HTTP请求的毫秒数。默认值是使用为connectionTimeout属性设置的值 。使用值-1表示没有(即无限)超时。
|
maxConnections
|
服务器在任何给定时间将接受和处理的最大连接数。达到此数目后,服务器将接受但不处理另一个连接。在处理的连接数降至maxConnections以下之前,该附加连接将被阻止,此时服务器将再次开始接受和处理新的连接。请注意,一旦达到限制,操作系统仍然可以根据该acceptCount 设置接受连接。默认值因连接器类型而异。对于BIO,除非执行程序,否则默认值为maxThreads的值 在这种情况下,将使用默认值,即执行程序的maxThreads值。对于NIO,默认值为10000 。对于APR /本机,默认值为8192 。
仅对于NIO,将值设置为-1将禁用maxConnections功能,并且不计算连接数。
|
maxCookieCount
|
请求允许的Cookie的最大数量。小于零的值表示没有限制。如果未指定,将使用默认值200。
|
maxExtensionSize
|
限制HTTP块请求中的块扩展的总长度。如果值为-1 ,则不施加任何限制。如果未指定,8192 将使用默认值。
|
maxHttpHeaderSize
|
请求和响应HTTP标头的最大大小,以字节为单位。如果未指定,则此属性设置为8192(8 KB)。
|
maxKeepAliveRequests
|
在服务器关闭连接之前可以管道传输的HTTP请求的最大数量。将此属性设置为1将禁用HTTP / 1.0保持活动以及HTTP / 1.1保持活动和流水线。将此设置为-1将允许无限数量的流水线或保持活动的HTTP请求。如果未指定,则此属性设置为100。
|
maxSwallowSize
|
Tomcat会为中止的上载而吞下的请求正文字节的最大数量(不包括传输编码开销)。上载异常终止是指Tomcat知道将忽略请求正文,但客户端仍将其发送。如果Tomcat不吞咽该主体,则客户端不太可能看到响应。如果未指定,将使用默认值2097152(2兆字节)。小于零的值表示不应强制执行任何限制。
|
maxThreads
|
此Connector将创建的请求处理线程的最大数量,因此,它确定了可以处理的同时请求的最大数量。如果未指定,则此属性设置为200。如果执行程序与此连接器相关联,则此属性将被忽略,因为连接器将使用执行程序而不是内部线程池执行任务。请注意,如果配置了执行程序,则将正确记录为此属性设置的任何值,但是会报告该值(例如,通过JMX), -1 以明确未使用该值。
|
maxTrailerSize
|
限制在分块的HTTP请求的最后一块中的尾部标头的总长度。如果值为-1 ,则不施加任何限制。如果未指定,8192 将使用默认值。
|
minSpareThreads
|
始终保持运行状态的最小线程数。这包括活动线程和空闲线程。如果未指定,10 则使用默认值。如果执行程序与此连接器相关联,则此属性将被忽略,因为连接器将使用执行程序而不是内部线程池来执行任务。请注意,如果配置了执行程序,则将正确记录为此属性设置的任何值,但是会报告该值(例如,通过JMX),-1 以明确未使用该值。
|
noCompressionStrongETag
|
此标志配置是否考虑使用具有强ETag的资源进行压缩。如果为true ,则不会压缩具有ETag的资源。默认值为true 。
不推荐使用此属性。它将在Tomcat 10以后的版本中将其硬编码为删除true 。
|
noCompressionUserAgents
|
该值是一个正则表达式(使用java.util.regex ),与user-agent 不应该对其进行压缩的HTTP客户端的标头匹配,因为这些客户端尽管确实宣传了对该功能的支持,但它们的实现却很糟糕。默认值为空字符串(禁用正则表达式匹配)。
|
processorCache
|
协议处理程序缓存Processor对象以提高性能。此设置指示要缓存多少这些对象。 -1 表示无限,默认为200 。如果不使用Servlet 3.0异步处理,那么一个很好的默认设置是使用与maxThreads设置相同的设置。如果使用Servlet 3.0异步处理,一个很好的默认设置是使用maxThreads中的较大者和期望的并发请求(同步和异步)的最大数量。
|
rejectIllegalHeader
|
如果收到的HTTP请求包含非法的标头名称或值(例如,标头名称不是令牌),则此设置确定是否将以400响应(true )拒绝请求,或者是否忽略非法标头(false )。默认值是 false 将导致处理请求,但非法标头将被忽略。
|
rejectIllegalHeaderName
|
不推荐使用此属性。它将在Tomcat 10及更高版本中删除。现在,它是rejectIllegalHeader的别名。
|
relaxedPathChars
|
的HTTP / 1.1规范要求在URI路径使用时,某些字符%ン编码。不幸的是,包括所有主要浏览器在内的许多用户代理都不符合该规范,并以未编码形式使用这些字符。为了防止Tomcat拒绝此类请求,可以使用此属性来指定要允许的其他字符。如果未指定,则不允许使用其他字符。该值可以是以下字符的任意组合: " < > [ \ ] ^ ` { | } 。值中存在的任何其他字符将被忽略。
|
relaxedQueryChars
|
的HTTP / 1.1规范要求某些字符%ン编码在URI查询字符串中使用时。不幸的是,包括所有主要浏览器在内的许多用户代理都不符合该规范,并以未编码形式使用这些字符。为了防止Tomcat拒绝此类请求,可以使用此属性来指定要允许的其他字符。如果未指定,则不允许使用其他字符。该值可以是以下字符的任意组合: " < > [ \ ] ^ ` { | } 。值中存在的任何其他字符将被忽略。
|
restrictedUserAgents
|
该值是一个正则表达式(使用java.util.regex ),与user-agent 不应该使用HTTP / 1.1或HTTP / 1.0保持活动状态的HTTP客户端的标头匹配,即使客户端宣传了对这些功能的支持。默认值为空字符串(禁用正则表达式匹配)。
|
server
|
覆盖http响应的Server标头。如果设置,则此属性的值将覆盖Tomcat默认值和Web应用程序设置的任何服务器标头。如果未设置,则使用应用程序指定的任何值。如果应用程序未指定值,则Apache-Coyote/1.1 使用该值 。除非您偏执,否则将不需要此功能。
|
socketBuffer
|
为套接字输出缓冲提供的缓冲区大小(以字节为单位)。可以指定-1以禁用缓冲区的使用。默认情况下,将使用9000字节的缓冲区。
|
SSLEnabled
|
使用此属性可以在连接器上启用SSL通信。要在连接器上打开SSL握手/加密/解密,请将此值设置为true 。默认值为false 。true 启用此值时,您还需要设置 scheme 和secure 属性,以将正确的request.getScheme() 和 request.isSecure() 值传递给servlet。有关更多信息,请参见SSL支持。
|
tcpNoDelay
|
如果设置为true ,则将在服务器套接字上设置TCP_NO_DELAY选项,这可以在大多数情况下提高性能。true 默认情况下设置为。
|
threadPriority
|
JVM中请求处理线程的优先级。默认值为5 (java.lang.Thread.NORM_PRIORITY 常数的值 )。有关java.lang.Thread 此优先级的含义的更多详细信息,请参见该类的JavaDoc 。如果执行程序与此连接器相关联,则此属性将被忽略,因为连接器将使用执行程序而不是内部线程池来执行任务。请注意,如果配置了执行程序,则将正确记录为此属性设置的任何值,但是会报告该值(例如,通过JMX), -1 以明确未使用该值。
|
upgradeAsyncWriteBufferSize
|
不能为单个操作完成的异步写操作分配给缓冲区的默认大小,以字节为单位。无法立即写入的数据将存储在此缓冲区中,直到可以写入为止。如果需要存储的数据多于缓冲区中的可用空间,则在写入期间缓冲区的大小将增加。如果未指定,将使用默认值8192。
|