每天学习一点(tomcat连接器优化)

server.xml文件中的相关配置

http连接器优化

port TCP端口号。连接器将创建服务器套接字并等待传入连接。您的操作系统只允许一个服务器应用程序侦听特定IP地址上的特定端口号。如果使用特殊值0(零),那么Tomcat将随机选择一个空闲端口用于此连接器。这通常只在嵌入式和测试应用程序中有用。


redirectPort 如果这个连接器支持非ssl请求,并且接收到一个匹配的请求。<security-constraint>需要SSL传输时,Catalina将自动将请求重定向到此处指定的端口号。


URIEncoding 这指定在%xx解码URL之后用于解码URI字节的字符编码。如果没有指定,UTF-8将被使用,除非org.apache.catalina.STRICT_SERVLET_COMPLIANCE 系统性质设置为true在这种情况下,将使用ISO-8859-1。

maxPostSize 将由容器表单URL参数解析处理的POST的最大大小(以字节为单位)。可以通过将此属性设置为小于零的值来禁用该限制。如果未指定此属性,则此属性设置为2097152(2MB)。注意,FailedRequestFilter可用于拒绝超过此限制的请求。


disableUploadTimeout 此标志允许servlet容器在数据上传期间使用不同的连接超时,通常是更长的连接超时时间。如果未指定此属性,则此属性设置为true这将禁用更长的超时时间。


maxThreads 将创建的请求处理线程的最大数目。连接器,从而确定可处理的同时请求的最大数量。如果未指定此属性,则此属性设置为200。如果执行器与此连接器相关联,则忽略此属性,因为连接器将使用执行器而不是内部线程池执行任务。请注意,如果配置了执行器,则该属性的任何设置都将被正确记录,但它将被报告为(例如通过JMX)-1表明它没有被使用。


tcpNoDelay 如果设置为true,将在服务器套接字上设置tcp_no_delay选项,这将提高大多数情况下的性能。这是设置为true默认情况下。


enableLookups 设为true如果你想连接到request.getRemoteHost()若要执行DNS查找,以返回远程客户端的实际主机名,请执行以下操作。设为false跳过DNS查找并以字符串形式返回IP地址(从而提高性能)。默认情况下,将禁用DNS查找。


compression 连接器可以使用HTTP/1.1GZIP压缩来节省服务器带宽。参数的可接受值是“OFF”(禁用压缩)、“ON”(允许压缩,这会导致文本数据被压缩)、“Force”(在所有情况下都强制压缩)或一个数字整数值(相当于“ON”,但指定输出压缩前的最小数据量)。如果不知道内容长度,并将压缩设置为“ON”或更激进,则输出也将被压缩。如果未指定此属性,则此属性设置为“OFF”。


compressionMinSize 如果压缩设置为“on”,则此属性可用于在压缩输出之前指定最小数据量。如果未指定,则此属性默认为“2048”。


compressibleMimeType 该值是一个逗号分隔的MIME类型列表,可用于这些类型的HTTP压缩。默认值是 text/html,text/xml,text/plain,text/css,text/javascript,application/javascript
注:MIME(Multipurpose Internet Mail Extensions)多用途互联网邮件扩展类型。是设定某种扩展名的文件用一种应用程序来打开的方式类型,当该扩展名文件被访问的时候,浏览器会自动使用指定应用程序来打开。多用于指定一些客户端自定义的文件名,以及一些媒体文件打开方式。


protocol 设置处理传入通信量的协议。默认值是HTTP/1.1它使用自动切换机制来选择非阻塞的基于JavaNIO的连接器或基于APR/本机的连接器。如果PATH(窗户)或LD_LIBRARY_PATH(在大多数Unix系统上)环境变量包含Tomcat本机库,将使用APR/本机连接器。如果找不到本机库,将使用非阻塞的基于Java的连接器。注意,APR/本机连接器对HTTPS的设置与Java连接器不同。
若要使用显式协议而不是依赖上述自动切换机制,可以使用以下值:
org.apache.coyote.http11.Http11Protocol-阻塞Java连接器
org.apache.coyote.http11.Http11NioProtocol-非阻塞Java NIO连接器
org.apache.coyote.http11.Http11Nio2Protocol-非阻塞Java NIO 2连接器
org.apache.coyote.http11.Http11AprProtocol-APR/本机连接器。
也可以使用自定义实现。
看看我们连接器比较图表。对于http和https,这两个Java连接器的配置是相同的。
有关apr连接器和apr特定ssl设置的更多信息,请访问APR文件

每天学习一点(tomcat连接器优化)

ajp连接器优化

protocol 设置处理传入通信量的协议。若要配置AJP连接器,必须指定此连接器。如果没有提供协议的值,则http连接器而不是配置AJP连接器。
AJP连接器的标准协议值是AJP/1.3它使用自动切换机制来选择基于JavaNIO的连接器或基于APR/本机的连接器。如果PATH(窗户)或LD_LIBRARY_PATH(在大多数Unix系统上)环境变量包含Tomcat本机库,将使用本机/APR连接器。如果找不到本机库,将使用基于JavaNIO的连接器。
若要使用显式协议而不是依赖上述自动切换机制,可以使用以下值:
org.apache.coyote.ajp.AjpProtocol-阻塞Java连接器
org.apache.coyote.ajp.AjpNioProtocol-非阻塞Java NIO连接器。
org.apache.coyote.ajp.AjpNio2Protocol-非阻塞JavaNIO 2连接器。
org.apache.coyote.ajp.AjpAprProtocol-APR/本机连接器。
也可以使用自定义实现。


URIEncoding 这指定在%xx解码URL之后用于解码URI字节的字符编码。如果没有指定,UTF-8将被使用,除非org.apache.catalina.STRICT_SERVLET_COMPLIANCE 系统性质设置为true在这种情况下,将使用ISO-8859-1。


maxThreads 将创建的请求处理线程的最大数目。连接器,从而确定可处理的同时请求的最大数量。如果未指定此属性,则此属性设置为200。如果执行器与此连接器相关联,则忽略此属性,因为连接器将使用执行器而不是内部线程池执行任务。请注意,如果配置了执行器,则该属性的任何设置都将被正确记录,但它将被报告为(例如通过JMX)-1表明它没有被使用。


acceptCount 当所有可能的请求处理线程正在使用时,传入连接请求的最大队列长度。队列满时收到的任何请求都将被拒绝。默认值为100。


connectionTimeout 连接器将在接受连接后等待呈现请求URI行。AJP协议连接器的默认值是-1(即无限)。


minSpareThreads 线程的最小数目始终保持运行。这包括活动线程和空闲线程。如果未指定,则默认为10被利用了。如果执行器与此连接器相关联,则忽略此属性,因为连接器将使用执行器而不是内部线程池执行任务。请注意,如果配置了执行器,则该属性的任何设置都将被正确记录,但它将被报告为(例如通过JMX)-1表明它没有被使用。


tcpNoDelay 如果设置为true,将在服务器套接字上设置tcp_no_delay选项,这将提高大多数情况下的性能。这是设置为true默认情况下。


enableLookups 设为true如果你想打电话到request.getRemoteHost()若要执行DNS查找,以返回远程客户端的实际主机名,请执行以下操作。设为false跳过DNS查找并以字符串形式返回IP地址(从而提高性能)。默认情况下,将禁用DNS查找。


allowTrace 可用于启用或禁用跟踪HTTP方法。如果未指定此属性,则此属性设置为false。

每天学习一点(tomcat连接器优化)

猜你喜欢

转载自blog.51cto.com/13760226/2324203