apache负载均衡配置
apache版本需要2.0以上
?
第一步,打开apache的相关模块
修改APACHE的配置文件httpd.conf 打开以下模块,将之前的#取消即可
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
?
第二步,设置负载
ProxyRequests Off???
<Proxy balancer://myCluster>????
??? BalancerMember http://localhost:3000???? //我测试使用的是mongrel服务,可以换成其他tomcat等服务
??? BalancerMember http://localhost:3001?? ? //我测试使用的是mongrel服务,可以换成其他tomcat等服务
??? BalancerMember http://localhost:3002?? ? //我测试使用的是mongrel服务,可以换成其他tomcat等服务
</Proxy>
?
BalancerMember可以任意增加数量,目前未测试到底支持多少个
?
第三步,设置反向代理
<VirtualHost *:80>????
??? ServerName localhost
??? DocumentRoot d:/redmine-1.1.3/public/ //修改为自己的目录
????
??? ProxyPass / balancer://myCluster/???? //与负载上的名字保持一致
??? ProxyPassReverse / balancer://myCluster/??? //与负载上的名字保持一致
??? ProxyPreserveHost on???
</VirtualHost>??
?
设置完毕之后,重启服务器即可
?
测试时候,首先确保http://localhost:3000? 3001 3002端口的服务是开的,然后访问http://localhos,会均衡的负载导3个端口
?
?
?
?
1 楼 eleven_go 2011-11-18 想问笔者,如果其中一个服务挂掉了,比如http://localhost:3000,那还会转发到这个服务吗?我们有没有什么方式来检测? 2 楼 jiaoronggui 2011-11-18 eleven_go 写道想问笔者,如果其中一个服务挂掉了,比如http://localhost:3000,那还会转发到这个服务吗?我们有没有什么方式来检测?