`
xinlanzero
  • 浏览: 246003 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

Tomcat中的Connector配置

    博客分类:
  • J2EE
阅读更多
    JBoss使用Tomcat作为Web容器,因此在JBoss中对于Web容器的配置也类似于在Tomcat中的配置,主要就是对于server.xml文件的编辑,在JBoss 5.x中,这个文件位于${JBOSS.HOME}\server\${confifure}\deploy\jbossweb.sar下,其中configure的值可以是all, default,web,standard, minimal等。下面的代码展示了一个JBoss default配置下的server.xml,由于篇幅原因,将其中的注释都已经去掉了。

Xml代码
1.<Server>  
2.   <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />  
3.   <Listener className="org.apache.catalina.core.JasperListener" />  
4.   <Service name="jboss.web">  
5.      <Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}"    
6.               connectionTimeout="20000" redirectPort="8443" compression="on"    
7.               compressionMinSize="1" compressableMimeType="text/html,text/xml" />  
8.      <Engine name="jboss.web" defaultHost="localhost">  
9.         <Realm className="org.jboss.web.tomcat.security.JBossWebRealm"  
10.            certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"  
11.            allRolesMode="authOnly"  
12.            />  
13.         <Host name="localhost">    
14.            <Valve className="org.jboss.web.tomcat.service.jca.CachedConnectionValve"  
15.            cachedConnectionManagerObjectName="jboss.jca:service=CachedConnectionManager"  
16.            transactionManagerObjectName="jboss:service=TransactionManager" />  
17.         </Host>  
18.      </Engine>  
19.   </Service>  
20.</Server>  
<Server>
   <Listener className="org.apache.catalina.core.AprLifecycleListener" SSLEngine="on" />
   <Listener className="org.apache.catalina.core.JasperListener" />
   <Service name="jboss.web">
      <Connector protocol="HTTP/1.1" port="8080" address="${jboss.bind.address}" 
               connectionTimeout="20000" redirectPort="8443" compression="on" 
               compressionMinSize="1" compressableMimeType="text/html,text/xml" />
      <Engine name="jboss.web" defaultHost="localhost">
         <Realm className="org.jboss.web.tomcat.security.JBossWebRealm"
            certificatePrincipal="org.jboss.security.auth.certs.SubjectDNMapping"
            allRolesMode="authOnly"
            />
         <Host name="localhost"> 
            <Valve className="org.jboss.web.tomcat.service.jca.CachedConnectionValve"
            cachedConnectionManagerObjectName="jboss.jca:service=CachedConnectionManager"
            transactionManagerObjectName="jboss:service=TransactionManager" />
         </Host>
      </Engine>
   </Service>
</Server>


    在上面的配置文件中,Server是根节点,一个Server就代表一个Servlet容器,因此在server.xml中,这个节点只能有一个,在Server节点下,可以存在一个或者多个Service节点。

    一个Service节点代表了一个或者多个Connector和一个Engine,而Connector和Engine是在server.xml中两个重要的配置项,Connector的主要功能是接受、响应用户请求。常用的Connector有HTTP/1.1 Connector和AJP Connector,HTTP/1.1 Connector主要用于处理用户的HTTP请求,需要注意的是虽然它名叫HTTP/1.1 Connector,但是是完全兼容HTTP/1.0协议的。AJP Connector主要使用AJP协议和Web Connector通信,通常用于集群中。

    HTTP/1.1 Connector的实例监听在用户配置的端口上,当应用服务器启动时,HTTP/1.1 Connector负责创建若干线程,用于处理用户请求,创建的线程数目取决于用户配置的minThreads值,默认为5,当有更多的用户请求到来时,HTTP/1.1 Connector将会创建更多的线程用于处理请求,创建线程的最大值由maxThreads定义,默认值为20,当所有的线程都在忙于处理用户请求时,新到来的请求将会放入HTTP/1.1 Connector创建的Socket队列中,队列的长度由acceptCount属性定义,当等待队列也被占用满了,新来的用户请求将会收到connection refused错误。

    所有的Connector提供的配置项(不完全版scheme, isSecure, xpoweredBy, useIPVHosts ):
• allowTrace
如果需要服务器能够处理用户的HAED/TRACE请求,这个值应该设置为true,默认值是false;

• emptySessionPath
如果设置为true,所有session,cookie的path将会被设置为/,这种设置通常是在portlet中比较有用,默认值是false;

• enableLookups
如果需要在调用request.getRemoteHost()方法时获取到客户端的机器名,则需要配置为true,如果配置为false,将会跳过DNS查询直接返回客户端机器的IP地址,通常为了提高性能,将此值设置为false,默认值是true;

• maxPostSize
POST方法能够提交的数据的最大大小,如果没有声明或者设置为小于等于0,则表示POST提交的数据大小是不限制的,默认值是2Megabytes.

• protocol
设置处理请求的协议,默认是HTTP/1.1,即org.apache.coyote.http11.Http11Protocol,此外还支持的协议有:org.apache.coyote.http11.Http11NioProtocol(通过NIO处理用户请求,可以提高系统性能), org.apache.coyote.http11.HttpAprProtocol。

• proxyName/proxyPort
如果Web服务器使用了代理服务器,配置此参数意味着在调用request.getServerName的时候将会获取代理服务器的名称,getServerPort()将会返回proxyPort。

• redirectPort
如果Connector的配置是支持非SSL的请求,当一个SSL请求到来时,服务器会自动的将请求重定位到redirectPort。

• URIEncoding
URI字节转化成String的时候的编码方式,默认为ISO-8859-1,如果页面需要支持中文,一般可以将其设置为UTF-8或者GBK,GB2312。

• useBodyEncodingForURI
如果设置为true,则会根据页面的编码决定URI的编码方式,默认是false。

Http/1.1 Connector提供的配置项:
• acceptCount
等待队列的长度,默认值是100。

• address
如果Tomcat所在的主机有多个IP,这个值声明了用于监听HTTP请求的IP地址。

• bufferSize
Connector创建的输入流的大小,默认值是2048 bytes,提高这个值可以提升性能,增加内存消耗。

• compressableMimeType
使用HTTP压缩的MIME类型,使用逗号分割,默认值是 text/html,text/xml,text/plain。

• compression
为了节省带宽,可以将这个值设置为on,从而启用HTTP/1.1 GZIP压缩。off关闭压缩,forces强制使用压缩,默认值是off。

• connectionTimeout
Connector接受一个连接后等待的时间(milliseconds),默认值是60000。

• executor
在Service节点下,Connector节点前可以配置一个Executor节点用于管理线程,这个属性的值是配置的Executor的名称,如果应用了此属性且executor存在,那么任何其他的关于thread的配置将会被忽略。

• keepAliveTimeout
在Connector关闭连接前,Connector为另外一个请求Keep Alive所等待的微妙数,默认值和 connectionTimeout一样。

• maxHttpHeaderSize
HTTP请求、响应头信息的最大大小,默认是8192bytes。

• maxKeepAliveRequests
HTTP/1.0 Keep Alive 和HTTP/1.1 Keep Alive / Pipeline的最大请求数目,如果设置为1,将会禁用掉Keep Alive和Pipeline,如果设置为小于0的数,Keep Alive的最大请求数将没有限制。默认为100。

• maxThreads
用于处理用户请求的最大线程数,默认值是20。

• noCompressionUserAgents:
设置不使用HTTP GZIP压缩的客户端,使用逗号分隔,在某些浏览器不支持压缩的时候可以使用此属性。

• port
Connector监听的端口。

• restrictedUserAgents
设置不使用Keep Alive的客户端代理名称,使用逗号分割,默认值是空字符串。

• server
覆盖HTTP响应的serve头信息,如果不设置的话,默认值是 Apache-Coyote/1.1。一般情况下不需要关注此属性。

• socketBuffer
Socket输出流缓冲区的大小,默认是9000bytes,如果设置为小于0的值,则表示不使用此缓冲区。

• tcpNoDelay
默认值是true,设置为true可以提高系统性能。

• threadPriority
请求处理线程的优先级,默认的优先级是NORMAL。


分享到:
评论

相关推荐

    apache & tomcat 负载均衡配置文件和tomcat connector

    本人电脑上已经配置好的相关配置文件 包括: tomcat-connectors-1.2.40-windows-x86_64-httpd-2.4.x.zip httpd.conf server.xml(tomcat) mod_jk.conf uriworkermap.properties vhosts.conf workers.properties

    Tomcat中的Connector配置讲解

    今天小编就为大家分享一篇关于Tomcat中的Connector配置讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

    tomcat SSL的配置

    第四步:配置Tomcat服务器 打开Tomcat根目录下的/conf/server.xml,找到如下配置段,修改如下: &lt;Connector port="8443" protocol="HTTP/1.1" SSLEnabled="true" maxThreads="150" scheme=...

    tomcat中的几点配置说明

    /&gt;配置中,和连接数相关的参数有: minProcessors:最小空闲连接线程数,用于提高系统处理性能,默认值为10 maxProcessors:最大连接线程数,即:并发处理的最大请求数,默认值为75 acceptCount:允许的最大连接数...

    org.apache.catalina.connector.ClientAbortException和TOMCAT的日志配置

    问题1:TOMCAT下载文件出错:org.apache.catalina.connector.ClientAbortException. 问题2:TOMCAT记录接收数据大小、发送数据大小和请求处理时间

    Tomcat 服务器server.xml的关键参数配置

    说明:以下文字均以tomcat5.0.30为例进行。 1,配置tomcat服务器访问端口,只需配置Connector的port端口即可。Tomcat默认为8080,现修改port参数值为80。

    APACHE 2.2.9+TOMCAT6.0.18配置负载均衡

    APACHE 2.2.9+TOMCAT6.0.18配置负载均衡 目标: 使用 apache 和 tomcat 配置一个可以应用的 web 网站,要达到以下要求: 1、 Apache 做为 HttpServer ,后面连接多个 tomcat 应用实例,并进行负载均衡。 2、 为系统...

    Apache+Tomcat集群、优化配置

    1 文档目的 4 2 读者对象 4 3 网络拓扑图 4 4 具体步骤 4 4.1 需要事先下载的文件 4 4.2 安装 4 4.2.1 安装jdk、Tomcat 4 4.2.2 安装Apache 4 ...4.4.1 修改Tomcat的配置文件 7 4.4.2 优化Tomcat 7

    nginx + tomcat 集群配置

    nginx + tomcat 集群配置 负载 nginx 下载地址: http://nginx.org/en/download.html 联合tomcat 实现集群 windows: Nginx.conf 配置 //见文件夹下面的nginx.conf 更改tomcat的配置: 第一处端口...

    Tomcat中redirectPort的作用

    在Tomcat配置文件Server.xml中redirectPort的作用说明:  配置文件源代码片段: &lt;Connector port=8080 protocol=HTTP/1.1 connectionTimeout=20000 redirectPort=8443 URIEncoding=UTF-8/&gt; 这个代码片段是设置...

    Apache与Tomcat整合服务部署配置手册

    -jdk,并且结合Tomcat,提供JSP架构的web服务器,并且为以后Tomcat连接Apache时的快速通信安装tomcat-native,最后为tomcat提供连接Mysql的jar文件,mysql-connector-java,最后配置Tomcat的虚拟主机应用,...

    Tomcat安装及配置教程.pdf

    Tomcat是一个免费的开放源代码的Web应用服务器,由Apache软件基金会(Apache Software Foundation)的Jakarta项目中的一个核心项目发展而来,由Apache、Sun和其他一些公司及个人共同开发而成。Tomcat属于轻量级应用...

    apr库(tomcat优化)

     Tomcat源码中与connector相关的类位于org.apache.coyote包中,Connector分为以下几类:  Http Connector, 基于HTTP协议,负责建立HTTP连接。它又分为BIO Http Connector与NIO Http Connector两种,后者提供非阻塞...

    根据官方网站Tomcat-Mysql连接池配置实例.rar

    mysql-connector-java-5.1.8-bin.jar 放到D:\Program Files\apache-tomcat-6.0.16\lib下,我用的是tomcat6.总之放到lib下即可。 context.xml 放到D:\Program Files\apache-tomcat-6.0.16\conf 下。自己用的话,...

    【高并发】高并发环境下如何优化Tomcat性能?看完我懂了!

    写在前面 Tomcat作为最常用的Java Web服务器,随着并发量越来越...要想运行在该模式下,则直接修改server.xml里的Connector节点,修改protocol为如下配置。 protocol=org.apache.coyote.http11.Http11NioProtocol 重启

    Tomcat生产环境配置与应用 (1)1

    演示配置多个Connector &lt;Connector port="8860" protocol="org.apache.coyote.http11.Http11

    IIS8集成Tomcat

    安装和配置AJP Connector 2).添加ISAPI 过滤 3).添加虚拟路径 4).用户认证 5).注册ISAPI扩展程序 6).允许双重转义 下载好ISAPI文件存放在C:\tomcat_iis_connector目录下 修改conf\workers.properties.minimal,增加...

    基于tomcat映射路径配置方法分享

    tomcat请求头配置 在使用postman测试的时候(携带参数)我们经常会发现浏览器一个错误:request header is too large,意思是请求头字段太长了。在这里需要配置下tomcat请求头长度。 tomcat-service.xml &lt;Connector ...

    Tomcat集成IIS的配置文件

    Tomcat集成IIS需要的所有文件及具体配置

Global site tag (gtag.js) - Google Analytics