日期:2014-05-17  浏览次数:20889 次

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地址<