`
xinlanzero
  • 浏览: 251810 次
  • 性别: 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。


分享到:
评论

相关推荐

    Tomcat中的Connector配置讲解

    在Connector配置中,还能够启用内容压缩(compression),设定压缩的最小字节数(compressionMinSize)以及指定哪些MIME类型可以被压缩。 对于Connector的线程管理,Tomcat允许用户配置线程池的最小线程数...

    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及其配置文件

    【标题】:“Tomcat及其配置文件” 在Java Web开发领域,Tomcat是一个广泛使用的开源应用服务器,它专注于Servlet和JSP的应用。Tomcat是Apache软件基金会的Jakarta项目的一部分,作为一个轻量级的Web服务器和...

    tomcat_iis_connector工具

    3. 安装并配置"tomcat_iis_connector",这通常涉及到修改IIS的ISAPI扩展或FastCGI设置,以及Tomcat的Connector配置。 4. 设置Tomcat,确保它可以处理来自IIS的请求,可能需要配置`server.xml`文件中的Connector元素...

    Tomcat配置方法 Tomcat配置方法 Tomcat配置方法

    1. 调整`server.xml`中的`Connector`元素,如增大最大连接数,调整线程池大小等。 2. 使用JVM的调优工具,如JConsole或VisualVM,监控和调整内存分配。 **启动和停止Tomcat**: 1. 在命令行中,使用`bin`目录下的...

    tomcat集成部署配置

    - `server.xml`:这是Tomcat的主要配置文件,可以定义服务器端口、Connector、Context等。例如,你可以更改默认的HTTP端口8080以避免与其他服务冲突。 - `web.xml`:全局Web应用配置文件,定义全局的Servlet、过滤...

    [原创]xampp-tomcat- connector---- xampp 完美整合现有的tomcat [续]

    在整合过程中,可能需要在httpd.conf中添加mod_proxy_ajp模块的配置,以代理请求到Tomcat,同时在server.xml中配置Tomcat的AJP监听器,以接收来自Apache的请求。 "工具"标签可能是指博客中介绍了一些实用工具或步骤...

    在tomcat中配置https的总结

    ### 在Tomcat中配置HTTPS详解 #### 一、引言 随着互联网技术的发展与安全意识的提高,HTTPS已经成为现代Web应用的标准配置之一。HTTPS通过在HTTP的基础上加入SSL/TLS加密层,确保了数据传输的安全性。本文将详细...

    Tomcat中配置https

    本篇文章将详细讲解如何在Apache Tomcat服务器中配置HTTPS。 首先,我们需要生成一个密钥对,这通常包括一个公钥证书(Certificate)和一个私钥(Private Key)。在这个案例中,我们使用了名为"GenerateCommand....

    tomcat安装和配置

    同时,考虑启用SSL,修改&lt;Connector&gt;元素添加SSL配置,并生成和配置keystore文件。 【管理Tomcat】 1. **启动与停止**:通过命令行执行`startup.sh`或`shutdown.sh`启动或关闭Tomcat。Windows用户可以使用`startup...

    Tomcat服务器配置 视频教程 Tomcat视频

    5. **配置文件详解**:重点讲解`server.xml`,这是Tomcat的主要配置文件,包括端口号设置、Connector(连接器)配置、Context(应用上下文)定义等。还会涉及`web.xml`,它是Web应用的部署描述符,定义了应用的全局...

    tomcat_iis_connector

    标题中的“tomcat_iis_connector”指的是Tomcat与IIS之间的连接器,它允许IIS(Internet Information Services)和Tomcat应用服务器进行交互,实现两者之间的集成。在Web服务器领域,IIS是微软公司推出的一款强大的...

    tomcat支持https配置

    标题中的“Tomcat支持HTTPS配置”是指在Apache Tomcat服务器上启用安全套接层(SSL)协议,以提供加密通信和身份验证。这通常涉及到在Web应用中使用HTTPS(HTTP over SSL/TLS)协议,以保护用户的敏感信息,如登录...

    Tomcat配置HTTPS证书认证

    本篇文章将详细介绍如何在Tomcat中配置HTTPS证书认证,以便实现安全的Web服务。 首先,我们需要了解HTTPS的基本原理。HTTPS是在HTTP协议的基础上加入SSL/TLS(Secure Socket Layer/Transport Layer Security)协议...

    tomcat8配置

    为了增强安全性,建议配置`server.xml`中的`&lt;Connector&gt;`元素,启用SSL支持,添加`secure="true"`,`scheme="https"`,并配置keystore文件路径和密码。 10. **性能优化** Tomcat的性能可以通过调整配置文件中的...

    Tomcat+IIS整合配置文件

    **server.xml**:这是Tomcat的主要配置文件,包含服务器端口、Connector配置(与IIS的交互)、Context定义等关键设置。在IIS和Tomcat整合中,我们需要对这个文件进行适当修改,比如添加AJP或HTTP Connector,以使...

    tomcat6.0安装配置

    1. **修改端口**:如果你需要改变Tomcat默认的8080端口,可以编辑$CATALINA_HOME/conf/server.xml文件中的Connector元素,修改port属性。 2. **设置用户和角色**:为了安全起见,应配置Tomcat的管理员账号。在$...

    tomcat服务参数配置

    ### Tomcat服务参数配置详解 #### 一、Tomcat简介及安装 Tomcat是一款开源的Servlet容器,由Apache软件基金会下属的Jakarta项目开发。它实现了对Servlet和JavaServer Pages (JSP)技术的支持,并提供了作为Web...

Global site tag (gtag.js) - Google Analytics