apache版本:apache_2.2.4-win32-x86-no_ssl.msi
JK版本:mod_jk-1.2.26-httpd-2.2.4.so
tomcat版本:apache-tomcat-6.0.32-windows-x86.zip
首先安装apache地址可以填写本机IP,完成后修改
D:\Program Files\Apache Software Foundation\Apache2.2\conf 下面的
httpd.conf
在文件最后面增加:include conf\mod_jk.conf
然后再httpd.conf同级目录新建mod_jk.conf和workers.properties
------------------------mod_jk.conf----------------------------------
#加载mod_jk Module
LoadModule jk_module modules/mod_jk-1.2.26-httpd-2.2.4.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器
JkMount /* controller
#JkMount /*.jsp controller
#JkMount /*.do controller
#加载集群中的workers
#JkMountFile conf/uriworkermap.properties
------------------------mod_jk.conf----------------------------------
---------------------workers.properties------------------------------
worker.list = controller #server 列表
#========tomcat1========
worker.tomcat1.port=8009 #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
#========tomcat2========
worker.tomcat2.port=8019 #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat2.host=192.168.1.222 #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
#========tomcat3========
worker.tomcat3.port=8029 #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat3.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat3.type=ajp13
worker.tomcat3.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2,tomcat3 #指定分担请求的tomcat
---------------------workers.properties------------------------------
安装tomcat
直接解压到D:\
tomcat1
修改conf\server.xml文件
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1">
tomcat3
在相同路径下拷贝一份,改名为apache-tomcat-6.0.32-2
修改配置文件conf\server.xml 修改三个端口
<Server port="8006" shutdown="SHUTDOWN">
<Connector port="8081" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
<Connector port="8029" protocol="AJP/1.3" redirectPort="8443" />
<Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat3">
然后修改session同步:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>
把上面的内容替换成
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
channelSendOptions="8">
<Manager className="org.apache.catalina.ha.session.DeltaManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"/>
<Channel className="org.apache.catalina.tribes.group.GroupChannel">
<Membership className="org.apache.catalina.tribes.membership.McastService"
address="228.0.0.4"
port="45564"
frequency="500"
dropTime="3000"/>
<Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
address="auto"
port="4000"
autoBind="100"
selectorTimeout="5000"
maxThreads="6"/>
<!-- timeout="60000"-->
<Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
<Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender" />
</Sender>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
<Interceptor className="org.apache.catalina.tribes.group.interceptors.ThroughputInterceptor"/>
</Channel>
<Valve className="org.apache.catalina.ha.tcp.ReplicationValve"
filter=""/>
<Valve className="org.apache.catalina.ha.session.JvmRouteBinderValve"/>
<!--
<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
-->
<ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
<ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>
这里的
<!--
<Deployer className="org.apache.catalina.ha.deploy.FarmWarDeployer"
tempDir="/tmp/war-temp/"
deployDir="/tmp/war-deploy/"
watchDir="/tmp/war-listen/"
watchEnabled="false"/>
-->
如果不去掉这部分,则tomcat启动会报"FarmWarDeployer can only work as host cluster subelement!."
tomcat2
配置到另一台机器上,和上面tomcat1的配置相同就可以
把mod_jk-1.2.26-httpd-2.2.4.so拷贝到modules/目录下
分享到:
相关推荐
本文将详细介绍如何在一机双Tomcat环境下搭建Apache+Tomcat集群,并深入解析其中的关键配置和技术细节。 #### 二、Apache+Tomcat集群的优势 1. **高可靠性(HA)**:通过集群管理软件实现在主服务器发生故障时,备份...
- 如果在同一台机器上运行多个Tomcat,为了避免端口冲突,需要为其中一个或全部更改AJP端口。 7. **负载均衡控制器(controller)**: - 在`workers.properties`中,定义一个名为`controller`的负载均衡控制器,...
2. **配置通信机制**:Tomcat集群中的节点需要相互通信,这通常通过两种方式实现:共享内存(适用于同一台物理机上的多个Tomcat实例)和基于网络的通信(如JMS,适用于跨网络的节点)。 3. **共享session**:为了...
在Tomcat中,集群可以实现session复制,使得当一台服务器故障时,其他服务器能够接管其工作,保持服务不间断。此外,通过负载均衡,集群还能提高系统性能。 接下来,我们将深入探讨如何配置Tomcat5.5集群。首先,你...
本文将详细介绍如何在一台服务器上设置并运行多个Tomcat服务,以避免端口冲突和资源竞争,实现高效资源利用。 首先,我们来理解为什么要运行多个Tomcat服务。当有多个独立的Web应用需要在同一台服务器上运行,且每...
配置Nginx+Tomcat集群负载均衡的第一步是安装Nginx和多个Tomcat实例。在多台服务器上部署Tomcat,形成一个集群,确保服务的高可用性。每台服务器上的Tomcat实例都需要配置相同的应用,以处理相同类型的请求。 接...
【标题】:“Tomcat集群配置”是指在多台服务器上部署和管理多个Tomcat实例,以实现负载均衡、高可用性和容错性。这通常涉及将应用部署在多个Tomcat服务器上,通过一个前端负载均衡器(如Apache HTTP Server或Nginx...
本文将详细介绍如何在同一台服务器上配置多个Tomcat实例,以解决端口冲突的问题。 首先,需要了解Tomcat的默认端口号。默认情况下,Tomcat使用的HTTP端口是8080,AJP端口是8009, Shutdown端口是8005。如果在同一台...
在IT行业中,Tomcat是一个广泛使用的开源Java ...通过以上步骤和注意事项,我们可以成功地配置一个Tomcat集群,从而提高应用的性能和可靠性。记住,实际部署时还需要根据具体的业务需求和环境调整配置,确保最佳效果。
如果是多个Tomcat实例,如tomcatA和tomcatB,分别在各自的server.xml中设置不同的端口。 5. **Apache httpd.conf整合** 在Apache的主配置文件httpd.conf中,引入mod_jk.conf,并开启mod_jk模块: ```apacheconf ...
【描述】:本文档将详细介绍如何在多台服务器上配置Tomcat集群,以实现服务的可扩展性和高可用性,包括集群的基本概念、关键技术以及具体的环境说明和安装步骤。 【知识点】: 1. **集群基础**: - **服务实体**...
总之,通过合理配置Tomcat集群和使用Redis作为session存储,我们可以实现跨服务器的session共享,确保用户在多台服务器间的会话一致性。这个压缩包提供了一个预配置的解决方案,对于快速搭建和测试session共享环境...
4. **负载均衡**:负载均衡器(如Apache的mod_proxy模块)负责将请求分配给集群中的各个节点,以防止某一台服务器过载,同时确保服务的连续性。 5. **配置Apache**: - **mod_proxy**:启用Apache的mod_proxy模块...
5. Tomcat集群配置:在两台服务器上安装Tomcat后,需要对Tomcat进行集群配置。这包括修改Tomcat的server.xml文件以启用远程部署,设置会话复制等集群相关功能,并配置集群节点间通信的相关参数。 6. Apache安装:...
集群的主要目的是提高系统的可用性和可扩展性,当一台服务器出现故障时,其他服务器能够接管其工作,保持服务不间断;同时,通过负载均衡,可以将大量请求分散到各个服务器上,避免单一服务器过载。 【知识点二】:...