我正在尝试编写一个点击上限程序 - 基本上是流量控制。(在 PHP 中)
我的目标是记录(到文本文件)每小时的点击次数(使用增量计数器)。从那里,我将编写一个程序,根据是否达到点击上限来重定向流量。所以......对其进行伪代码
if ($cap <= $currentCount){ //cap is the max, currentCount is the current click rate
go here
}else{
go here
}
我不确定如何访问的数据是 $currentCount。基本上,它是 24 小时内的总点击次数。我该如何记录?
我什至如何开始处理这个问题?有任何线索、提示或提示吗?我对如何解决这个问题几乎一无所知。
:编辑:
我已经为这个问题找到了一个合理的解决方案。我将在下面为将来遇到此类需求的任何人强调它。
我的公司处理 buku 流量。因此,我们需要一种方法来管理过剩,并将其引导到需要的地方。目标是编写某种点击计数器,使我们能够保持点击上限(如果我们在一个广告上获得每天的最大点击次数,并且我们不想通过将其发送到该网站来浪费我们的流量,并且这些广告,我们希望能够重定向到另一个)。
我们将使用 Redis 来完成这项任务,因为在流量非常大的情况下使用数据库的 i/o 会耗尽数据库,并且出于同样的原因,使用文件系统解决方案是不可能的(如下所述, 会导致文件锁定和点击日志丢失)。
像这样的东西:
$redis = new Redis();
$redis->connect('127.0.0.1', 6379);
$redis->set('key', 'val');
echo $redis->get('key');
$redis->incr( 'counter', 1 ); // increment your counter
$counter = $redis->get( 'counter' );
if ( $counter > 100000 ) redirect( site1 );
redirect( site2 );
感谢所有帮助过的人!