负载均衡方案及详细配置

2020-05-08 09:46

Apache+Tomcat+mod_jk实现负载均衡方案

一、概述: 原理图:

提高系统可用性,对系统性能影响较小。对于一台服务器Down机后,可自动切换到另外一台进行访问。 服务器 操作系统 需要安装 Apache HTTP+Mod_jk Win server 2008 64位 JDK、Apache Http Tomcat1 Win server 2008 64位 JDK、Tomcat Tomcat2 Win server 2008 64位 JDK、Tomcat 最少需要两台机器,Tomcat1 和Tomcat2可在同一台服务器上。若条件允许最好是各用一台服务器。

二、详细配置步骤:

1、Apache http Server安装 32位的按照提示操作即可。 64位系统的不是安装包。 64位安装配置: 以管理员身份运行cmd 执行:httpd -k install 若无法运行并提示配置错误,请先安装vcredist_x64.exe后再执行。 安装后在Testing httpd.conf...时会报错,不影响。 httpd -k start 启动Apache、 httpd -k shutdown 停止Apache 、 httpd -k restart重启 测试Apache:

在IE中输入:127.0.0.1 打开网页显示 It work就OK

2、将Mod_jk的压缩包解压,找到mod_jk.so 复制到Apache目录下modules目录下 64位的下载mod_jk1.2.30_x64.zip 32位的下载tomcat-connectors-1.2.35-windows-i386-httpd-2.0.x.zip

3、修改Apache conf目录下的httpd.conf文件 在最后增加:Include conf/extra/mod_jk.conf 4、在conf/extra 下创建mod_jk.conf文件 增加如下:

#load module mod_jk.so

LoadModule jk_module modules/mod_jk.so

#mod_jk config #load workers

JkWorkersFile conf/workers.properties #set log file

JkLogFile logs/mod_jk.log #set log level JkLogLevel info

#map to the status server #mount the status server

JkMount /private/admin/mystatus mystatus

JkMount /* balance

5.在conf目录下创建workers.properties文件

增加: worker.tomcat1 中的tomcat1和tomcat2必须和Tomcat中的配置相同。Tomcat配置下面介召

worker.list=balance,mystatus

#first worker config

worker.tomcat1.type=ajp13

worker.tomcat1.host=192.168.8.204 worker.tomcat1.port=8009 #Tomcat的监听端口 worker.tomcat1.lbfactor=1

worker.tomcat1.socket_timeout=30 worker.tomcat1.socket_keepalive=1

#second worker config worker.tomcat2.type=ajp13

worker.tomcat2.host=192.168.8.204 worker.tomcat2.port=8010 #Tomcat的监听端口 实验是在同一机器上做的,所以两个不同

worker.tomcat2.lbfactor=1

worker.tomcat2.socket_timeout=30 worker.tomcat2.socket_keepalive=1

worker.balance.type=lb

worker.balance.balance_workers=tomcat1,tomcat2 worker.balance.sticky_session=1

worker.mystatus.type=status

6、Tomcat配置 两台配置相同 打开Tomcat的conf/server.xml 找到如下行:

修改为:

另一台Tomcat的jvmRoute=\ tomcat1和tomcat2必须和上面Apache 的workers.properties文件中配置相同

7、两台Tomcat的Session复制(提高了系统可用性,但会消耗系统性能) 项目的Web.xml中必须加上

需要同步的Session会话属性必须实现java.io.Serializable,否则不能同步

在两台Tomcat做相同操作。在Tomcat的server.xml中找到

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: