ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

tomcat基于NIO、NIO2、APR的http链接器支持的属性

2020-09-06 10:33:48  阅读:506  来源: 互联网

标签:HTTP NIO tomcat 默认 Connector 线程 设置 http 请求


基于NIO、NIO2、APR的http链接器支持的属性

属性 描述 默认值
acceptCount 当所有请求处理线程均被占用,等待请求队列的最大长度。当队列填满时,接收到的任何请求均会被拒绝 100
acceptorThreadCount 接收连接的线程数。对于多核服务器或者当前存在过多的非keep-alive状态的连接时,可以增大该值 1
acceptorThreadPriority 接收线程的优先级,默认5 5
address  当服务器存在多个IP地址,该属性指定监听端口的具体IP地址,默认情况下,服务器上所有IP地址的指定端口均会监听  
allowedTrailerHeader  默认处理块输入时,tomcat会忽略所有的trailer头,如果需要处理,需要将消息头添加到该属性,多个值以逗号分隔  
bindOnInit

用于控制当前链接器使用的Socket时绑定。默认情况下,socket在connector初始化时绑定,connector销毁时取消绑定

如果为false,socket在connector启动时绑定,销毁时取消绑定

true
compressableMimeType 设置可以压缩的MIME类型,以逗号分隔

text/html

text/xml

text/plain

compression

Connector可以用HTTP/1.1 GZIP压缩来节省带宽,该参数可以接受值:(1)off,关闭压缩(2)on,启用压缩,压缩文本数据(3)force,强制启用压缩  其中,非0值表示on

如果链接器支持sendfile,如NIO链接器,与压缩相比,将优先使用sendfile。大于48Kb的静态文件将以非压缩的方式发送。

可以通过设置链接器的useSendfile来禁用此特征。也可以在conf/web.xml或web应用的web.xml文件中更改DefaultServlet的sendfile使用阈值

 

off
compressionMinSize 如果使用压缩,指定输出数据压缩前的最小数据量,超过该值,才会进行压缩 2048
connectionLinger Connector使用的Socket关闭时的延迟时间,默认-1,禁用关闭延迟 -1
connectionTimeout

Connector接收到连接请求的等待超时时间,单位ms,-1表示不超时

对于http链接器,默认60000,但是tomcat的server.xml文件中设置的值为20000。除非disableUploadTimeout设置为false,此属性也用于控制读取请求体

对于AJP链接器,默认-1

 
connectionUploadTimeout 数据上传的超时时间,单位ms,只有当disableUploadTimeout设置为false时生效。  
disableUploadTimeout 允许Servlet容器使用长连接进行数据上传,不指定时,该属性为true,表示使用短连接 true
executor

Executor引用名称,如果设置了该属性,且该属性值对应一个有效Executor,链接器将使用此Executor,其他所有线程属性将忽略。

注意,如果没有为Connector指定共享的Executor,那么Connector将使用一个私有的、内部Executor提供线程池

 
executorTerminationTimeoutMillis 停止Connector是,私有内部线程池等待请求处理线程中断时间  
keepAliveTimeout 关闭连接前,Connector等待下一个HTTP/AJP连接请求的时间,单位ms。默认值与connectionTimeout值一致,-1表示不超时  
maxConnections

服务器接收并处理的最大连接数。到达该值后,服务接收但是不处理更多请求。额外的请求会被阻塞,直到连接数低于该值。

注意,一旦达到该值,服务器仍然接收请求,接收数由acceptCount控制

BIO默认同maxThreads,如果使用了Executor,则使用Executor的属性。

NIO默认10000,APR默认8192。

注意:在windows下,APR≤maxConnections的1024倍,设置-1表示不限制

 
maxCookieCount 一个请求允许的最大cookie数量,小于0表示不限制 200
maxExtensionSize 在Chunked HTTP请求中,chunk-extension的总长度限制。负数表示不限制 8192
maxHttpHeaderSize 请求和响应中HTTP头的最大字节数 8192
maxKeepAliveRequests 连接关闭前,可以在管道中传输的HTTP请求最大数。设置1表示禁用HTTP/1.0 keep-alive、HTTP/1.1 keep-alive和pipelining 100
maxSwallowSize 对于已终止的上传,tomcat吞咽的请求体最大字节数(不包括转码开销)。已终止上传为tomcat知道请求体将被忽略但客户端依然继续发送。如果tomcat不吞咽请求体,那么客户端不会
收到响应,负值表示不限制
2097152
(2M)
maxThreads Connector请求处理的最大线程数。这决定了可以同时处理的请求最大数。如果Connector使用了Executor,由Executor中的设置决定 200
maxTrailerSize 对于chunked HTTP请求,最后一个Chunk中,尾部头信息的总长度限制,-1表示不限制 8192
minSpareThreads 一直保持运行的最小线程数 10
 noCompressionUserAgents  该属性为正则表达式,对于user-agent头信息匹配的HTTP请求将不进行压缩,即使HTTP请求的客户端支持压缩。默认空白字符,表示禁用正则表达式 空白字符

processorCache

(高并发使用-1或者较大值)

协议处理器缓存Processor对象来提升性能。该属性决定可以缓存的Processor对象数。

-1表示不限制,默认值200。如果不适用Servlet 3.0异步处理,该值最好和maxThreads相同。否则该值最好使用maxThreads和真正的请求并发数两者较大的

200

restrictedUserAgent

该属性为正则表达式,对于匹配的user-agent请求将不使用HTTP的Keep-Alive功能。即使HTTP请求的客户端支持压缩。默认空白字符,表示禁用正则表达式

空白字符

server 

覆盖HTTP响应的Server头信息。如果设置了,那么将会覆盖tomcat默认以及web应用设置的Server头信息,如果不设置,将使用应用设置的值。如果应用也没设置,使用Apache-Coyoto/1.1

 

serverRemoveAppProvideValue

如果为true,由web应用设置的任何"Server"HTTP头都会被移出

false

SSLEnabled

当前Connector是否启用SSL通信。true表示打开,默认为false。

当设置为true时,需要设置schema和secure属性,保证在调用request.getSchema和request.isSecure方法时,能将正确的值传给Servlet

false
tcpNoDelay 设置为true时,会提升系统性能 true

threadPriority

JVM中请求处理线程的优先级

5

标签:HTTP,NIO,tomcat,默认,Connector,线程,设置,http,请求
来源: https://www.cnblogs.com/zh-dream/p/13620890.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有