PHP PHP redis滑動視窗頻率限制

2021-10-20 10:44:04 字數 453 閱讀 3141

使用redis進行頻率限制 , 並且使用滑動視窗形式 , 可以防止臨界點時的超頻

**在下面 ,請自行替換new redis()物件

function check($queuename,$count,$timewindow)

//佇列滿了,取出最早訪問的時間

$earlytime= $redis->lindex($queuename,$length-1);

//說明最早期的時間還在時間視窗內,還沒過期,所以不允許通過

if ($currtime-$earlytime <= $timewindow) else

return true;

}

使用方式 , 比如說24小時一次 ,對手機號的限制

if(check("tel-:",1,24*3600))

PHP PHP redis滑動視窗頻率限制

使用redis進行頻率限制 並且使用滑動視窗形式 可以防止臨界點時的超頻 在下面 請自行替換new redis 物件 function check queuename,count,timewindow 佇列滿了,取出最早訪問的時間 earlytime redis lindex queuename,l...

Week5 D 滑動視窗滑動視窗

week5 d 滑動視窗滑動視窗 zjm 有乙個長度為 n 的數列和乙個大小為 k 的視窗,視窗可以在數列上來回移動.現在 zjm 想知道在視窗從左往右滑的時候,每次視窗內數的最大值和最小值分別是多少.例如 數列是 1 3 1 3 5 3 6 7 其中 k 等於 3.window position ...

week5 D 滑動視窗滑動視窗

zjm 有乙個長度為 n 的數列和乙個大小為 k 的視窗,視窗可以在數列上來回移動.現在 zjm 想知道在視窗從左往右滑的時候,每次視窗內數的最大值和最小值分別是多少.例如 數列是 1 3 1 3 5 3 6 7 其中 k 等於 3.window position minimum value max...