字体:  

PHP 负载均衡算法

zhengyes 发表于: 2008-8-01 13:32 来源: PHPChina 开源社区门户

参考条件:
1、数据表名:popadv,里面就一个字段:adv,用来保存广告链接,大概有100条记录
2、在随机选广告的基础上尽量实现平均,就是这100条广告最好被选中的机会相差不大,不要出现一个广告被选了50次,另一个才选上2次
3、每天大概有30万次浏览,就是说你的程序性能必须要能承载每天30万次的访问


[ 本帖最后由 zhengyes 于 2008-8-1 13:43 编辑 ]

最新回复

tianxj at 2008-8-01 13:47:41
$i = mt_rand(count($adv));
echo $adv[$i];
楼主的方法跟用随机数比有什么好处呢
夜雨飘零 at 2008-8-01 15:12:07
Simonsen at 2008-8-01 17:28:11

这样不是就行了么~~~
ginux at 2008-8-01 23:47:52
学习
神仙 at 2008-8-02 14:19:37
这和负载均衡有什么关系?
programmerhuang at 2008-8-03 10:37:26
不用随机, 就所有的广告轮流显示出来. 就会均衡了.
flashjay at 2008-8-03 12:29:52
‘负载均衡’?

比较无语
leric at 2008-8-03 16:34:35
看不出头绪啊,啥是负载均衡啊
edwardhey at 2008-8-03 19:20:59

QUOTE:

原帖由 programmerhuang 于 2008-8-3 10:37 发表
不用随机, 就所有的广告轮流显示出来. 就会均衡了.
正解... 完全没有必要随机数... 有的时候大家考虑问题还是复杂了...
saku87 at 2008-8-03 21:16:54
负载均衡算法 .............
PHP.Object at 2008-8-04 02:04:45
需要一个点击计数器,可以通过Divition Hashing 算法把每次点击均匀的分布到100个广告链接中,
典型的Hashing 散列问题.数据库应用层分表大多数也是这么做的.
okoly at 2008-8-04 10:04:05
无语 .............
lonce at 2008-8-04 12:17:50
无语。。。。。。。。。。。。。。。
cers at 2008-8-04 15:13:01
打乱顺序然后从开始往后取就可以了
lorrychenls at 2008-8-04 22:31:32
我承认我是被骗进来了~我想看看怎样的高人用PHP来做到负载均衡~~
原来,原来~~直接轮换连接就可以搞定的事情弄出这么多复杂的事情出来,还来了复杂均衡~~囧~
fleaphp at 2008-8-05 00:36:17
彻底无语
夜雨飘零 at 2008-8-05 09:34:52
崩溃
netbuddy at 2008-8-05 09:50:11
我想用array_rand应该也没什么问题吧,既然是随机,那只要在足够长的时间内,每个元素出现的机率肯定是相同的,就好比硬币的正反两面出现的机率。
print($adv[array_rand($adv)]);
另外,楼主的$i总为0啊,要是这样
$i=rand(0,count($adv)-1);
就对了
hmly at 2008-8-05 09:54:04
ws00377531 at 2008-8-05 11:00:09
那边对那边啊