Apache实现Web Server负载均衡详解(不考虑Session版)

yipeiwu_com7年前PHP代码库

至少需三台服务器:
服务器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
最后,重启服务器A的apache

相关文章

php使用timthumb生成缩略图的方法

本文实例讲述了php使用timthumb生成缩略图的方法。分享给大家供大家参考,具体如下: 生成缩列图有二种方式: 一、提前生成好,供调用 缩列图常规做法是,开始根据网站中的图片规格,要...

php统计文件大小,以GB、MB、KB、B输出

使用filesize()函数命令实现文件大小的统计,要求:1,以GB、MB、KB、B中的一个输出;2.数量级必须大于1小于1024,并保留两位小数;   开始动工: 复制代码 代码如下:...

php提取字符串中网站url地址的方法

本文实例讲述了php提取字符串中网站url地址的方法。分享给大家供大家参考。具体分析如下: 今天写一个问答系统上线之后发现有很多人发链接了,由于业务部门要我们过滤掉网站地址了,下面我给大...

php读取txt文件组成SQL并插入数据库的代码(原创自Zjmainstay)

/** * $splitChar 字段分隔符 * $file 数据文件文件名 * $table 数据库表名 * $conn 数据库连接 * $fields 数据对应的列名 * $inse...

php递归实现无限分类生成下拉列表的函数

复制代码 代码如下: /*—————————————————— */ //– 递归实现无限分类生成下拉列表函数 //– $tpl->assign('sort_list',creat...