(负载均衡)Window 服务器停采用Apache2.2+JBoss7服务器集群
(负载均衡)Window 服务器下采用Apache2.2+JBoss7服务器集群1.安装APCHE 2.2应用服务器?2.安装JBOSS 7.X以
(负载均衡)Window 服务器下采用Apache2.2+JBoss7服务器集群
1.安装APCHE 2.2应用服务器?2.安装JBOSS 7.X以上两步省略?找到APACHE安装目录${yourDIR}\Apache Software Foundation\Apache2.2\conf修改?httpd.conf 文件,httpd是apache的主程序,基本对apache的配置都在这个文件里进行a.将负载均衡需要使用的模块都打开(去掉#号即可),如下:mod_headers.somod_proxy.somod_proxy_balancer.somod_proxy_connect.somod_proxy_http.so如图是修改差异对比
?继续往httpd.conf增加内容,首先增加 session sticky 设置(使用session sticky 可以使访问的session 保存在本地cookie, 这样session实际上是访问同一台机器,不会因页面跳转而导致session丢失)Header add Set-Cookie "ROUTEID=.%{BALANCER_WORKER_ROUTE}e; path=/" env=BALANCER_ROUTE_CHANGED?设置 balancer 成员与均衡的条件和权重,ProxyRequests Off ???设置不要需要代理,将其关闭。ProxySet lbmethod设置以什么作为负载均衡的权衡,lbmethod有以下三种取值方式:?
lbmethod=byrequests 按照请求次数均衡(默认)?
lbmethod=bytraffic 按照流量均衡?
lbmethod=bybusyness 按照繁忙程度均衡(总是分配给活跃请求数最少的服务器)?
?ProxyRequests Off?<proxy balancer://SC>?? ? ? ? ?BalancerMember http://192.168.0.171:8020 loadfactor=1 route=server1? ? ? ? ?BalancerMember http://192.168.0.171:8080 loadfactor=1 route=server2? ? ? ? ?BalancerMember http://192.168.0.27:8020 loadfactor=1 route=server3? ? ? ? ?ProxySet lbmethod=?bybusyness?? ? ? ? ?ProxySet stickysession=ROUTEID</proxy>??设置虚拟主机,设置反向代理,让所有请求都来自一个虚拟的主机。<VirtualHost *:80>? ? ? ? ?ProxyPass / balancer://SC/? ? ? ? ?ProxyPassReverse / balancer://SC/</VirtualHost>如图是对这两个指令的解释。

?

??最后设置?balancer-manager,加上它后,你可以通过 页面对负载均衡情况了如指掌。地址:http://serverIp/balancer-manager?<Location /balancer-manager> ??SetHandler balancer-manager?Order Allow,DenyAllow from all?</Location>?备注:使用sessionsticky可以使session 附着在一个服务器上,一旦该服务器宕机了,该session会丢失。但可以重新登录,附着到另一台正常运行的服务器上。这种附着做法只在session 存储的信息不太重要时可以这样做。如果要做到session 不丢失,只得使用session同步机制了,此处不再描述。???国人翻译的apache文章:http://www.phpchina.com/resource/manual/apache/?apache官网文章:http://httpd.apache.org/docs/2.2/en/