`
hypercube1024
  • 浏览: 83618 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

apache + jk + tomcat 负载均衡与集群配置

    博客分类:
  • java
阅读更多
1,copy mod_jk.so 到 apache 的 modules 目录

2,在 apache 的 httpd.conf 文件中添加如下内容
#加载mod_jk Module
LoadModule jk_module modules/mod_jk.so
## 配置 mod_jk
#加载集群中的workers
JkWorkersFile conf/workers.properties
#加载workers的请求处理分配文件
JkMountFile conf/uriworkermap.properties
#指定jk的日志输出文件      
JkLogFile logs/mod_jk.log


3,在apache的conf目录里面创建 workers.properties 和 uriworkermap.properties

4,在 workers.properties 中添加
worker.list=loadbalancer, status
#work1
worker.work1.port=8009 #tomcat中ajp端口
worker.work1.host=127.0.0.1
worker.work1.type=ajp13
worker.work1.lbfactor=1 #负载权重
#work2
worker.work2.port=9009
worker.work2.host=127.0.0.1
worker.work2.type=ajp13
worker.work2.lbfactor=1

worker.loadbalancer.type=lb
worker.loadbalancer.balance_workers=work1,work2
worker.loadbalancer.sticky_session=true
worker.loadbalancer.sticky_session_force=false
worker.status.type=status


5,在uriworkermap.properties添加
/status=status
/*=loadbalancer
# Exclude the subdirectory static:
!/*/assets|/*=loadbalancer

其中assets为静态文件,此时apache需要配置一个alias别名到tomcat的项目目录,这样可以做到动静分离

6,分别修改tomcat的server.xml文件
<Engine name="Catalina" defaultHost="localhost" jvmRoute="work1">

这里jvmRoute的值和workers.properties文件中对应 worker.<jvmRoute>.<...>
<Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

ajp端口对应workers.properties文件中worker.<jvmRoute>.port

7,分别在tomcat的server.xml文件中Engine节点下添加
<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"
                 channelSendOptions="6">

          <Manager className="org.apache.catalina.ha.session.BackupManager"
                   expireSessionsOnShutdown="false"
                   notifyListenersOnReplication="true"
                   mapSendOptions="6"/>
          <!--
          <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="5000"
                      selectorTimeout="100"
                      maxThreads="6"/>

            <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=".*\.gif;.*\.js;.*\.jpg;.*\.png;.*\.htm;.*\.html;.*\.css;.*\.txt;"/>

          <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.ClusterSessionListener"/>
        </Cluster>


7,在应用的web.xml中末尾添加
<distributable/>


如果使用terracotta实现session复制,则第6,7两部可以跳过,实际上terracotta来进行session复制是更好的方案,下次附上tomcat用terracotta保存session的配置方法

8,分别启动tomcat和apache,通过访问http://localhost/status可以查看集群状态,访问http://localhost/<tomcat下的应用名称> ,都能成功即配置成功

分享到:
评论

相关推荐

    tomcat+apache+jk集群和负载均衡

    tomcat+apache+jk集群和负载均衡

    jk+apache+tomcat整合 负载均衡 集群

    jk+apce+tomcat 整合 实现tomcat负载均衡 tomcat集群。让tomcat处理.jsp动态页面,apache处理静态页面。平且实现在一个IP下提供多个站点服务。 里面包括怎样配置apache虚拟机文件 怎样配置tomcat的虚拟机文件 花了我...

    Tomcat+apache+mod_jk实现负载均衡和集群配置

    详细介绍了Tomcat+apache+mod_jk 实现负载平衡和集群的配置步骤, 在部署到真实项目的过程中遇到的问题 给出了处理方法

    Apache+mod_jk+Tomcat负载均衡配置

    Apache、mod_jk、Tomcat、负载均衡、配置

    Apache+Tomcat集群和负载均衡及Session绑定

    配置apache+tomcat负载均衡和session复制,并且解决了tomcat报2009-6-5 10:10:12 org.apache.jk.common.ChannelSocket processConnection 警告: processCallbacks status 2 的问题

    Linux_Apache+Tomcat+jk

    讲述了怎样在liunx系统下配置tomcat集群,apache负载均衡,session黏贴,关于缓存,压缩可以在此基础上扩展

    Apache2.2 tomcat-6.0.18负载均衡与集群

    Apache2.2+3个tomcat-6.0.18负载均衡与集群,采用代理模式和jk模式,两份文档,详细说明,配置全套,自己做的,成功运行,代码太大,上传不了,只有文档了,不过很详细的。

    Apache+多个Tomcat 服务器集群配置

    将以下Module的注释去掉,这里并没有使用mod_jk.so进行apache和tomcat的链接,从2.X以后apache自身已集成了mod_jk.so的功能。只需简单的把下面几行去掉注释,就相当于以前用mod_jk.so比较繁琐的配置了。这里主要采用...

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

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

    基于apache的tomcat负载均衡和集群配置_mod jk

    NULL 博文链接:https://navylee.iteye.com/blog/866875

    Apache与Tomcat集群负载均衡(一键打包解压即可运行)

    Tomcat和Apache集群和负载均衡配置 Tomcat版本:apache-tomcat-7.0.26 Apache版本:Apache2.2.25 jre版本:1.6.0_26 集群和负载均衡配置已整好,解压后,只要点击run.bat一键启动,即可看到集群效果。 运行成功后,...

    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

    Apache2.2以上版本与Tomcat整合配置及负载均衡实现

    下面是实现2个tomcat实现负载均衡,如果只有一个则可删除一个 apache2.2以上版本,无需使用jk_mod来集成tomcat,直接使用ajp,很方便。 修改apache配置文件httpd.conf 启用mod_proxy_ajp 代码如下: #LoadModule ...

    tomcat集群和负载均衡的实现

    tomcat集群和负载均衡的实现 (1)在那台要安装apache的服务器上安装apache2.0.55,我的安装路径为默认C:\Program Files\Apache Group\Apache2 (2)安装后测试apache能否正常启动,调试到能够正常启动...

    Tomcat和Apache集群和负载均衡配置

    JK是Tomcat提供给http服务器的插件,这里是tomcat-connectors-1.2.39-windows-x86_64-httpd-2.4.x,对应64位操作系统。

    FineReport 群集配置方案

    在Linux中用Apache+Tomcat+JK实现负载均衡和群集的完整过程,亲测OK。

    Apache和tomcat集群部署相关配置文件案例

    Apache和tomcat集群部署配置文件案例,包含Apache中的配置文件httpd.conf,mod_jk.conf,workers.properties,以及tomcat中配置文件server.xml

    tomcat cluster 集群 session复制

    而实际情况下,采取Apache 加Tomcat进行负载均衡集群的时候,是可以不用将Session复制到所有的节点里, 比如有六个Tomcat实例 Tomcat1,Tomcat2,Tomcat3,Tomcat4,Tomcat5,Tomcat6 是可以配置成 三组互相复制...

    Virtualbox安装centos 图解

    自己整理的技术文档,里面许多都是自己实践过的; ...讨论篇:apache与tomcat及整合实现负载均衡及集群.... 190 讨论篇:Apache+Tomcat 集群负载均衡 mod_proxy模式.... 201 讨论篇:网站静态化

Global site tag (gtag.js) - Google Analytics