Tomcat8 实现负载均衡和集群

2025-10-28 00:53:24

1、准备工作需要三个文件

1、httpd-2.4.16-x64-vc11.zip

2、apache-tomcat-8.0.24-windows-x64.zip

3、tomcat-connectors-1.2.40-windows-x86_64-httpd-2.4.x.zip

2、解压httpd-2.4.16-x64-vc11.zip文件得到Apache24目录

在超级管理员命令提示符下切换到Apache24\bin

安装到服务

httpd -k install 

修改conf\httpd.conf的Define SRVROOT "/Apache24"

Define SRVROOT "E:/Tomcat/Apache24"

否则启动httpd会报错

3、解压tomcat-connectors-1.2.40-windows-x86_64-httpd-2.4.x.zip

1、把mod_jk.so文件拷贝到Apache24\modules目录下

2、在httpd.conf文件最后添加

Include conf/mod_jk/mod_jk.conf

3、在Apache24\ conf目录建立文件夹mod_jk

4、创建三个文件mod_jk.conf、workers2.properties和urimap.properties

mod_jk.conf内容

#Load mod_jk module.

LoadModule jk_module modules/mod_jk.so

#Where to find workers.properties

JkWorkersFile conf/mod_jk/workers2.properties

JkMountFile conf/mod_jk/urimap.properties

#Where to put jk logs

JkLogFile logs/mod_jk.log

#Set the jk log level[debug/error/info]

JkLogLevel info

#Select the log format

JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"

#JkRequestLogFormat set the request format

JkRequestLogFormat "%w %V %T"

JkMount /* loadbalancer

workers2.properties内容

#worker.list=loadbalancer

worker.list=loadbalancer,tomcat1,tomcat2 

#server 列表

#define the first node

worker.tomcat1.port=8009

worker.tomcat1.host=127.0.0.1

worker.tomcat1.type=ajp13

worker.tomcat1.lbfactor=1

#worker.tomcat1.redirect = tomcat1

#define the second node

worker.tomcat2.port=9009

worker.tomcat2.host=127.0.0.1

worker.tomcat2.type=ajp13

worker.tomcat2.lbfactor=1

#worker.tomcat2.redirect = tomcat2

#就是对Tomcat2活动性进行禁用,负载均衡启动的时候,负载都到tomcat1上面去,Tomcat2不参与负载。

#当tomcat1当掉的时候,通过worker.tomcat1.redirect = tomcat2 ,tomcat2就会自己启动起来,接替tomcat1继续工作

#worker.tomcat2.activation = disabled

#Now we define the load-balancing behavior

worker.loadbalancer.type=lb

#mod_jk versions 1.2.7 and up  use balance_workers replaces old balanced_workers 

#worker.loadbalancer.balanced_workers=tomcat1, tomcat2

worker.loadbalancer.balance_workers=tomcat1, tomcat2

worker.loadbalancer.sticky_session=true

worker.loadbalancer.sticky_session_force=true

urimap.properties内容

*.*=loadbalancer

4、解压apache-tomcat-8.0.24-windows-x64.zip

并复制两份并分别重命名Tomcat-8.0.24-x64_1和Tomcat-8.0.24-x64_2

1、修改Tomcat-8.0.24-x64_2的conf\server.xml文件

<Server port="8005" shutdown="SHUTDOWN">

改为

<Server port="9005" shutdown="SHUTDOWN">

<Connector port="8080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="8443" />

改为

<Connector port="9080" protocol="HTTP/1.1"

               connectionTimeout="20000"

               redirectPort="9443" />

 <Connector port="8009" protocol="AJP/1.3" redirectPort="8443" />

改为

 <Connector port="9009" protocol="AJP/1.3" redirectPort="9443" />

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

改为

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

2、修改Tomcat-8.0.24-x64_1的conf\server.xml文件

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

改为

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

5、运行Apache24\bin\ApacheMonitor.exe任务栏显示

当上面配置完成后点击start按钮再访问 http://127.0.0.1

到此Tomcat8 实现了负载均衡

6、实现集群

把Tomcat-8.0.24-x64_1和Tomcat-8.0.24-x64_2\conf\server.xml里的

<Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/>

的注释放开就可以实现简单的集群了

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢