windows下通过tomcat搭建集群.md

前提:JDK必须环境变量配置好,在D盘下新建一个文件夹httpd,tomcat解压到此文件夹,在httpd下面新建Apache HTTP文件夹,把Apache的服务器安装到此目录

一、下载Apache服务器

这个是负载均衡服务器,用来转发请求到不同的tomcat上

下载地址:http://archive.apache.org/dist/httpd/binaries/win32/httpd-2.2.25-win32-x86-no_ssl.msi 网盘链接 安装时域名可写为localhost .Apache安装完成后在浏览器中输入http://localhost/ ,如果出现It works! 则证明安装成功.

二、下载tomcat

下载地址:http://archive.apache.org/dist/tomcat/tomcat-7/v7.0.8/bin/apache-tomcat-7.0.8.zip(实测这个有问题)

网盘链接 下载好解压出来两份命名为tomcat1和tomcat2 放到httpd下面

三、下载mod_jk

这个是用来搭建tomcat集群的插件 下载地址:

http://archive.apache.org/dist/tomcat/tomcat-connectors/jk/binaries/win32/jk-1.2.31/mod_jk-1.2.31-httpd-2.2.3.so

网盘链接

下载好,放到D://httpd/Apache HTTP/modules 下面

四、配置mod_jk.conf

新建文件mod_jk.conf 放到目录D://httpd/Apache HTTP/conf 下面

输入内容:

#加载mod_jk Module
LoadModule jk_module modules/mod_jk-1.2.31-httpd-2.2.3.so
#指定workers.properties文件路径 
JkWorkersFile conf/workers.properties
#指定那些请求交给tomcat处理,"controller"为在workers.propertise里指定的负载分配控制器名
JkMount /* controller

五、配置workers.properties

新建文件workers.properties,放到目录D://httpd/Apache HTTP/conf 下面 输入内容:

#server
worker.list = controller
#========tomcat1========
#ajp13端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.port=8009
#tomcat的主机地址,如不为本机,请填写ip地址 
worker.tomcat1.host=localhost
#协议类型
worker.tomcat1.type=ajp13
#server的加权比重,值越高,分得的请求越多。lbfactor是负载平衡因数(Load Balance Factor)
worker.tomcat1.lbfactor=1
#========tomcat2========
worker.tomcat2.port=8010
worker.tomcat2.host= localhost
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor=1
#========controller,负载均衡控制器========
#负载均衡控制器类型,lbfactor是负载平衡因数(Load Balance Factor)
worker.controller.type=lb
#指定分担请求的tomcat列表
worker.controller.balanced_workers=tomcat1,tomcat2
#粘性session(默认是打开的) 当该属性值=true(或1)时,代表session是粘性的,即同一session在集群中的同一个节点上处理,session不跨越节点。在集群环境中,一般将该值设置为false
worker.controller.sticky_session=false
#设置用于负载均衡的server的session可否共享  1为共享
worker.controller.sticky_session_force=1

六、修改httpd.conf文件

文件在D://httpd/Apache HTTP/conf 下面, 在文件的末尾新增下面这句话:

Include conf/mod_jk.conf

七、配置tomcat

修改文件D://httpd/tomcat1/conf/server.xml <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat1"> jvmRoute 为你这个tomcat的名字,要和上面那个workers.properties里面的配置想照应。 然后在这个节点下面新增下面内容

 <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"/>
            <Sender className="org.apache.catalina.tribes.transport.ReplicationTransmitter">
                <Transport className="org.apache.catalina.tribes.transport.nio.PooledParallelSender"/>
            </Sender>
            <Receiver className="org.apache.catalina.tribes.transport.nio.NioReceiver"
                      address="auto" port="4000" autoBind="100"
                      selectorTimeout="5000" maxThreads="6"/>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.TcpFailureDetector"/>
            <Interceptor className="org.apache.catalina.tribes.group.interceptors.MessageDispatch15Interceptor"/>
        </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>

八、配置另一个tomcat

和七步一样,只不过

 <Engine name="Catalina" defaultHost="localhost" jvmRoute="tomcat2">

jvmRoute要写tomcat2

然后在这个节点下面新增和tomcat1一样的内容

九、修改tomcat2的端口

在tomcat2/conf/server.xml tomcat1的端口不用改,用默认的就行,主要是为了tomcat2的端口不和tomcat1的端口冲突,查看端口

netstat -aon|findstr "80"

需要修改的的地方

<Server port="9005" shutdown="SHUTDOWN">
<Connector port="8090" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />
<Connector port="9010" protocol="AJP/1.3" redirectPort="8443" />

十、重新启动Apache server

在桌面右下角有个Apache服务器的图标,鼠标点击他,有个restart

十一、启动tomcat1 和tomcat2

双击D://httpd/tomcat1/bin/startup.bat 双击D://httpd/tomcat2/bin/startup.bat

注意:如果JDK没有配置好会出错的,JDK怎么配置,自己百度吧。。

十二、下载测试程序

下载simpleServelt.war放到tomcat1 和 tomcat2 的 wabapps下面 网盘链接如果刷新一次,后面的tomcat改变,说明集群已经搭建完成。

看下图


注意:他支持热插拔,就是如果一个tomcat宕掉了,并不会影响整个程序,你可以随时再将此tomcat重启

十三、浏览器访问

http://localhost/test

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值