日期:2014-05-16  浏览次数:20776 次

Apache实现Tomcat集群

一,配置介绍

??1,linux

??2,tomcat6.0 (tomcat1,tomcat2)

??3,httpd( apache 版本(2.2.15))(需要命令安装)

??4, mod_jk-1.2.30-httpd-2.2.3.so (版本与上面的httpd要保持一致(2.2.x))

-------------------------------------------------------- ?

二,各个配置说明

?

httpd

1,将下载好的jk-1.2.30-httpd-2.2.3.so放入Apache_Home/modules下面

2在Apache_home/conf目录下创建mod_jk.conf文件,里面内容为

======================================

?

???#加载mod_jk Module
?? ? ? LoadModule jk_module modules/mod_jk-1.2.30-httpd-2.2.3.so

????? #加载集群中的workers
???????? JkWorkersFile conf/workers.properties
????? #加载workers的请求处理分配文件
???????? JkMountFile conf/uriworkermap.properties
??? ? #指定jk的日志输出文件
???????? JkLogFile logs/mod_jk.log
????? #指定日志级别
???????? JkLogLevel warn
???? #指定哪些请求交给tomcat处理,"controller"为在 workers.propertise里指定的负载分配控制器名?
???????? JkMount /* controller

?

====================================

3,创建Apache_Home/conf/workers.properties

==================================

?#server 列表
???????? worker.list=controller,tomcat1,tomcat2
????? #========tomcat1========
????? #ajp13 端口号,在tomcat下server.xml配置,默认8009(更改server.xml下找到ajp/1.3进行更改)
??????? worker.tomcat1.port=8009
????? #tomcat的主机地址,如不为本机,请填写ip地址
??????? worker.tomcat1.host=localhost
??????? worker.tomcat1.type=ajp13
???? #server的加权比重,值越高,分得的请求越多
??????? worker.tomcat1.lbfactor=1
???? #========tomcat2========
???? #ajp13 端口号,在tomcat下server.xml配置,默认8009
?????? worker.tomcat2.port=9009
???? #tomcat的主机地址,如不为本机,请填写ip地址
????? worker.tomcat2.host=localhost
????? worker.tomcat2.type=ajp13
??? #server的加权比重,值越高,分得的请求越多
?????? worker.tomcat2.lbfactor=1
??? #========controller,负载均衡控制器========
??? #server名为controller,用于负载均衡
????? worker.controller.type=lb

#重试次数
????? worker.retries=3
?? #指定分担请求的tomcat
???? worker.controller.balanced_workers=tomcat1,tomcat2
?? #粘性Session(默认是打开的) 当该属性值=True(或1)时,代表Session是粘性的,即同一Session在集群中的同一个节点上处理,Session不跨越节点。在集群环境中,一般将该值设置为False
???? worker.controller.sticky_session=false
? #设置用于负载均衡的server的session可否共享 有不少文章说设置为1是可以的,也有设置为0才可以的
???? worker.controller.sticky_session=1
? #worker.controller.sticky_session_force=1
? #worker.status.type=status

==================================

4,创建Apache_Home/conf/uriworkermap.properties

====================================

?

??在Apache_Home\conf下建立uriworkermap.properties文件

????? 配置内容:

???? #所有请求都由controller这个server处理
???? /*=controller
???? #所有包含jkstatus请求的都由status这个 server处理
???? #/jkstatus=status
???? #这里的"!”