Apache 实现Web Server 负载均衡,不考虑Session版

Apache 实现Web Server 负载均衡,不考虑Session版

Apache 实现Web Server 负载均衡,不考虑Session版

至少需三台服务器:

服务器A:控制服务器

服务器B和服务器C:实际执行服务器

负载均衡原理:将访问服务器A的请求分发至服务器B和服务器C

修改服务器A上apache的http.conf文件:

首先,加载相应的代理模块,去掉以下模块前面的#号:

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_ajp_module modules/mod_proxy_ajp.so

LoadModule proxy_balancer_module modules/mod_proxy_balancer.so

LoadModule proxy_connect_module modules/mod_proxy_connect.so

LoadModule proxy_ftp_module modules/mod_proxy_ftp.so

LoadModule proxy_http_module modules/mod_proxy_http.so

其次,在文件末尾添加:

ProxyPass /example/ balancer://proxy/

<Proxy balancer://proxy>

BalancerMember http://serverB/example/

BalancerMember http://serverC/example/

</Proxy>

表示将访问服务器A的http://serverA/example/子目录下的所有文件分发至服务器B和C执行,相当于访问http://serverB/example/或http://serverC/example/子目录下的文件。

若写成:

ProxyPass / balancer://proxy/

<Proxy balancer://proxy>

BalancerMember http://serverB/

BalancerMember http://serverC/

</Proxy>

则代表所有访问A的请求都相应的转成访问B或C