php服务端重定向,使用PHP基于服务器流量重定向用户

开始了:

获取5个从属服务器以更新主服务器上的数据库中的表,每隔X秒/分钟插入其负载.然后在主服务器中,检查哪个负载最低,并将用户重定向到该特定的负载.

如何获得服务器负载?

有一个叫做sys_getloadavg()的函数;它将返回三个样本,分别代表阵列中最后1,5和15分钟的平均系统负载(系统运行队列中的进程数).

这样,如果系统负载超过设定的数量,您应该将访客重定向到其他从属服务器.例如:

$load = sys_getloadavg();

if ($load[0] > 80) {

//insert into database "I'm busy!!"

$query = "UPDATE `server_load` SET `load` = $load WHERE `server_id` = 1";

mysql_query($query);

}

注意$load上的0表示它在最后一分钟获得服务器负载,使用1或2表示5和15分钟的平均系统负载.

查询将位于从属服务器上的脚本上,每次运行时,它都会更新表server_load上的平均服务器负载.

如何从主服务器中进行选择

一旦您从从属服务器中隔离了“获取服务器负载”功能.您需要从主服务器执行的操作是查询数据库并从server_load表中获取最低负载.所提到的表具有足够的功能,具有时间戳字段,id字段和具有以下结构的加载字段:

`timestamp` int(11) not_null

`id` int(1) not_null autoincrement

`load` int(3) not_null

对于介绍mysql和php交互的基本教程,我建议从phpsense这个link.如果您花了足够的时间阅读我与之链接的文档,您应该能够实现目标.如果您已经无法在此站点上找到它们,请务必将以下所有问题作为独立实体提出.有可能他们一直被你前面的人一遍又一遍地问过.希望我得到了帮助.

资料来源:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值