Apache 2.2.x+Tomcat6集群配置备忘

本文详细介绍如何使用Apache2.2.x和Tomcat6搭建Web应用集群,包括Tomcat的server.xml配置、启用集群设置及Apache的httpd.conf配置。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在我们部署Web应用时,不可避免大多都会涉及到集群问题,此文作为Apache 2.2.x+Tomcat6配置集群的备忘。 

1.配置Tomcat6 的conf/server.xml文件,启用集群设置,如果在本地同时运行多个Tomcat进行测试的话,需要修改部分端口号,以避免冲突 
1.打开AJP:<Connector port="9009" protocol="AJP/1.3" redirectPort="9443" /> 
2.打开集群:

Xml代码 
  1.    <Engine name="Standalone" defaultHost="localhost" jvmRoute="jvm2">      
  2.     
  3.      <!--For clustering, please take a look at documentation at:     
  4.          /docs/cluster-howto.html  (simple how to)     
  5.          /docs/config/cluster.html (reference documentation) -->    
  6.           
  7.          
  8. <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"  channelSendOptions="6">         
  9.     <Manager className="org.apache.catalina.ha.session.BackupManager"         
  10.     expireSessionsOnShutdown="false"         
  11.     notifyListenersOnReplication="true"         
  12.     mapSendOptions="6"/>         
  13.     <!--         
  14.     <Manager className="org.apache.catalina.ha.session.DeltaManager"         
  15.     expireSessionsOnShutdown="false"         
  16.     notifyListenersOnReplication="true"/>         
  17.     -->         
  18.     <Channel className="org.apache.catalina.tribes.group.GroupChannel">         
  19.     <Membership className="org.apache.catalina.tribes.membership.McastService"         
  20.     address="228.0.0.4"         
  21.     port="45564"         
  22.     frequency="500"         
  23.     dropTime="3000"/>         
  24.     <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"         
  25.     address="auto"         
  26.     port="5001"         
  27.     selectorTimeout="100"         
  28.     maxThreads="6"/>         
  29.     <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">         
  30.     <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>         
  31.     </Sender>         
  32.     <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>         
  33.     <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>         
  34.     <Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>         
  35.     </Channel>         
  36.     <Valve className="org.apache.catalina.ha.tcp.ReplicationValve"         
  37.     filter=".*/.gif;.*/.js;.*/.jpg;.*/.png;.*/.htm;.*/.html;.*/.css;.*/.txt;"/>         
  38.     <Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"         
  39.     tempDir="/tmp/war-temp/"         
  40.     deployDir="/tmp/war-deploy/"         
  41.     watchDir="/tmp/war-listen/"         
  42.     watchEnabled="false"/>         
  43.     <ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>         
  44. </Cluster>    
  45.     
  46.     
  47.             
  48.     
  49.      <!-- The request dumper valve dumps useful debugging information about     
  50.           the request and response data received and sent by Tomcat.     
  51.           Documentation at: /docs/config/valve.html -->    
  52.      <!--   
  53.      <Valve className="org.apache.catalina.valves.RequestDumperValve"/>   
  54.      -->    
  55.     
  56.      <!-- This Realm uses the UserDatabase configured in the global JNDI     
  57.           resources under the key "UserDatabase".  Any edits     
  58.           that are performed against this UserDatabase are immediately     
  59.           available for use by the Realm.  -->    
  60.      <Realm className="org.apache.catalina.realm.UserDatabaseRealm"    
  61.             resourceName="UserDatabase"/>    
  62.     
  63.      <!-- Define the default virtual host     
  64.           Note: XML Schema validation will not work with Xerces 2.2.     
  65.       -->    
  66.      <Host name="localhost"  appBase="webapps"    
  67.            unpackWARs="true" autoDeploy="true"    
  68.            xmlValidation="false" xmlNamespaceAware="false">    
  69.     
  70.        <!-- SingleSignOn valve, share authentication between web applications     
  71.             Documentation at: /docs/config/valve.html -->    
  72.        <!--   
  73.        <Valve className="org.apache.catalina.authenticator.SingleSignOn" />   
  74.        -->    
  75.     
  76.        <!-- Access log processes all example.     
  77.             Documentation at: /docs/config/valve.html -->    
  78.        <!--     
  79.        <Valve className="org.apache.catalina.valves.AccessLogValve" directory="logs"       
  80.               prefix="localhost_access_log." suffix=".txt" pattern="common" resolveHosts="false"/>    
  81.        -->    
  82.     
  83.      </Host>    
  84.    </Engine>  



2.打开Apache下的conf/httpd.conf文件,打开注释: 

Html代码 
  1. LoadModule proxy_module modules/mod_proxy.so     
  2. LoadModule proxy_ajp_module modules/mod_proxy_ajp.so     
  3. LoadModule proxy_balancer_module modules/mod_proxy_balancer.so     
  4. LoadModule proxy_connect_module modules/mod_proxy_connect.so     
  5. LoadModule proxy_ftp_module modules/mod_proxy_ftp.so     
  6. LoadModule proxy_http_module modules/mod_proxy_http.so    


在文件末尾添加: 

Html代码 
  1. ProxyRequests Off        
  2. <Proxy balancer://cluster>         
  3.     BalancerMember ajp://localhost:8009 loadfactor=1 route=jvm1    
  4.     BalancerMember ajp://localhost:9009 loadfactor=1 route=jvm2    
  5. </Proxy>     


配置VirtualHost: 

Html代码 
  1. <VirtualHost *:80>        
  2.          ServerAdmin test@126.com        
  3.          ProxyPass / balancer://cluster/ stickysession=jsessionid nofailover=On        
  4.          ProxyPassReverse / balancer://cluster/      
  5.          ServerName www.mytest.com     
  6.          ServerAlias mytest.com       
  7. </VirtualHost>     


在应用程序的web.xml顶部加入: 

Html代码 
  1. <distributable/>    

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值