Windows下Apache2.2+Tomcat6配置集群、负载均衡、session共享(转载)
公司网站有一个需求:要保证网站7*24小时不间断的运行,服务器更新时,对用户是透明的。
找了一些资料,发现做服务器集群可以解决这个问题,至于其他的好处,可以参考
http://ispring.iteye.com/blog/374272
此篇文章中也有配置方案,但是对Session共享的设置解释不够详细。
在网上又搜索了一些文章,这篇还不错(有图有真相),推荐一下
http://hi.baidu.com/luodaijun/blog/item/5bbe4cfb5ffef864034f56a1.html
这里我把原文摘录一下,部分地方做了修改
环境说明
Apache: apache_2.2.21 1 个
Tomcat: apache-tomcat-6.0.29 (zip版) 2个
mod_jk: mod_jk.so 1个 (tomcat-connectors-1.2.32-windows-i386-httpd-2.2.x)
mod_jk,注意和apache版本匹配
第一部分:负载均衡
负载均衡,就是apache将客户请求均衡的分给tomcat1,tomcat2....去处理
1.安装apche,tomcat
我的安装路径:
D:\Apache2.2
D:\webServer\tomcat_1
D:\webServer\tomcat_2
2.安装mod_jk.so
把mod_jk.so复制到D:\Apache2.2\modules目录下。
3.修改Apache配置文件D:\Apache2.2\conf\httpd.conf
在文件最后加上下面一句话就可以了
Include conf/mod_jk.conf
4.httpd.conf 同目录下新建mod_jk.conf文件,内容如下:
#加载mod_jk Module
LoadModule jk_module modules/mod_jk.so
#指定 workers.properties文件路径
JkWorkersFile conf/workers.properties
#加载workers的请求处理分配文件
JkMountFile conf/uriworkermap.properties
#指定jk的日志输出文件
JkLogFile logs/mod_jk.log
#指定日志级别
JkLogLevel warn
5.在http.conf同目录下新建 workers.properties文件,内容如下
worker.list = controller,tomcat1,tomcat2 #server 列表
#========tomcat1========
worker.tomcat1.port=8009 #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat1.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat1.type=ajp13
worker.tomcat1.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
#========tomcat2========
worker.tomcat2.port=9009 #ajp13 端口号,在tomcat下server.xml配置,默认8009
worker.tomcat2.host=localhost #tomcat的主机地址,如不为本机,请填写ip地址
worker.tomcat2.type=ajp13
worker.tomcat2.lbfactor = 1 #server的加权比重,值越高,分得的请求越多
#========controller,负载均衡控制器========
worker.controller.type=lb
worker.controller.balance_workers=tomcat1,tomcat2 #指定分担请求的tomcat
worker.controller.sticky_session=false
6.在http.conf同目录下新建 uriworkermap.properties文件,内容如下
#所有请求都由controller这个server处理
/*=controller
#所有包含jkstatus请求的都由status这个server处理
/jkmanager/*=jkstatus
#所有以.gif结尾的请求都不由controller这个server处理,以下几个都是一样的意思
!/*.gif=controller
!/*.jpg=controller
!/*.png=controller
!/*.bmp=controller
!/*.css=controller
!/*.js=controller
!/*.htm=controller
!/*.html=controller
!/*.swf=controller
7.修改tomcat配置文件server.xml
如果你在不同电脑上安装tomcat,tomcat的安装数量为一个,可以不必修改tomcat配置文件
我这里是在同一台电脑上安装两个tomcat,所以需要更改其中一个的设置
需要修改的端口配置:
(1)<Server port="8005" shutdown="SHUTDOWN">
改为
<Server port="9005" shutdown="SHUTDOWN">
(2)<Connector port="8080" protoco