1. 环境说明
apache_2.2.14-win32-x86-no_ssl.msi
tomcat6.0
下载mod_jk-1.2.28-httpd-2.2.3.so
http://apache.justdn.org/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.28/mod_jk-1.2.28-httpd-2.2.3.somod_jk-1.2.28-httpd-2.2.3.so
2.负载均衡的配置
(1) 在httpd.conf最后添加一行: Include conf/mod_jk.conf
(2).mod_jk.conf 的内容 mod_jk.conf放在apache/conf目录下
#加载mod_jk Module
LoadModule jk_module modules/mod_jk-1.2.28-httpd-2.2.3.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理
JkMount /*.jsp controller
(3)workers.properties 内容,workers.properties也放在apache/conf目录下
worker.list = controller,tomcat1,tomcat2
worker.tomcat1.port=8009
worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
worker.tomcat2.port=9009
worker.tomcat2.host=localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balanced_workers=tomcat1,tomcat2 #指定分担请求的tomcat
#worker.controller.sticky_session=1
worker.controller.sticky_session=false
3.编写一个test.jsp的测试程序
<%
System.out.println("===========================");
%>
把test放到tomcat1,tomcat2的webapps下
启动tomcat1,tomcat2进行测试
再刷新一次,tomcat2也打印了一条,再刷新,可以看到请求会被tomcat1,tomcat2轮流处理,实现了负载均衡
4.配置集群,将tomcat1,tomcat2都做如下配置
把server.xml中注释部分
<!-- <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>-->
替换如下cluster配置内容:
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
channelSendOptions="8">
<!--
<Manager className="org.apache.catalina.ha.session.BackupManager"
expireSessionsOnShutdown="false"
notifyListenersOnReplication="true"
mapSendOptions="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"/>
<ClusterListener className="org.apache.catalina.ha.session.JvmRouteSessionIDBinderListener"/>
<ClusterListener className="org.apache.catalina.ha.session.ClusterSessionListener"/>
</Cluster>
在测试项目的web.xml中加入<distributable/>参数,
distributable元素来告诉servlet/JSP容器,编写将在分布式Web容器中部署的应用。
<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<distributable/>
</web-app>
分享到:
相关推荐
本文将详细介绍如何配置 Apache + Tomcat 集群,包括安装 Apache 和 Tomcat 服务器、配置 mod_jk 模块、配置 Apache 和 Tomcat 服务器、配置负载均衡控制器等。 一、安装 Apache 服务器 首先,需要安装 Apache ...
Apache2_2+Tomcat6配置集群、负载均衡
本文将详细介绍如何在一机双Tomcat环境下搭建Apache+Tomcat集群,并深入解析其中的关键配置和技术细节。 #### 二、Apache+Tomcat集群的优势 1. **高可靠性(HA)**:通过集群管理软件实现在主服务器发生故障时,备份...
Apache+Tomcat集群配置,Apache+Tomcat集群配置,Apache+Tomcat集群配置
### Apache和Tomcat集群配置详解 #### 一、软件准备 在进行Apache和Tomcat集群配置之前,首先需要准备所需的软件资源。 - **Apache 2.2**: - Windows平台: 从官方网站 [http://httpd.apache.org/download.cgi]...
【标题】:“Tomcat集群配置” 在Web应用的高可用性和可扩展性需求...正确配置和维护Tomcat集群,能显著提升Web应用的性能和可靠性,满足高并发场景的需求。在实际操作中,务必结合具体情况灵活调整,以达到最佳效果。
3. **集群配置**:Apache2和Tomcat6的集群配置涉及到多个层面。首先,要在Apache2中启用mod_jk,并配置JKWorkers文件,定义每个Tomcat实例(worker)的属性,如IP地址、端口等。然后,需要在Apache的虚拟主机配置中...
Apache和Tomcat集群配置是一项关键任务,特别是在高可用性和负载均衡的系统架构中。这个配置允许你通过Apache作为前端服务器,将请求分发到多个后端的Tomcat服务器上,从而提高系统的处理能力和稳定性。 首先,我们...
Apache和tomcat集群部署配置文件案例,包含Apache中的配置文件httpd.conf,mod_jk.conf,workers.properties,以及tomcat中配置文件server.xml
这份"apache+tomcat集群配置文件和文档"将涵盖以上所有要点,指导你逐步配置和测试Apache+Tomcat集群。按照文档操作,你将能够构建出一个高效且稳定的Web服务环境。在实际操作中,务必根据你的硬件资源和具体需求...
总结,配置Tomcat+Apache集群涉及多个步骤,包括安装和配置Apache和Tomcat,启用负载均衡,配置session复制,以及对集群进行持续监控和优化。通过这样的设置,可以提升Web应用的性能,增强系统的稳定性和容错能力。
1. **反向代理**:Apache2作为前端负载均衡器,接收用户请求,然后通过mod_proxy将请求转发到Tomcat集群中的某个实例。 2. **健康检查**:Apache2可以定期检查后端Tomcat实例的健康状态,如果发现某个实例不可用,...
总结,配置Apache和Tomcat集群涉及多个环节,包括Apache的负载均衡配置、Tomcat的集群设置、session共享以及故障转移和会话持久化策略。每个环节都需要细致操作,以确保在64位Windows系统上实现稳定、高效的Web服务...
Apache+Tomcat集群配置续Apache+Tomcat集群配置续Apache+Tomcat集群配置续Apache+Tomcat集群配置续
将以下Module的注释去掉,这里并没有使用mod_jk.so进行apache和tomcat的链接,从2.X以后apache自身已集成了mod_jk.so的功能。只需简单的把下面几行去掉注释,就相当于以前用mod_jk.so比较繁琐的配置了。这里主要采用...
配置Apache2.2与Tomcat7集群的过程包括安装和配置mod_jk,修改Apache和Tomcat的配置文件,以及测试集群功能。通过这种方式,我们可以构建一个可伸缩、可靠的Web服务架构,以应对高流量和复杂业务场景。 总结来说,...