PHP 使用 Redis 限制接口每分钟请求次数,一分钟可请求多少次? [ 2.0 版本 ]
//判断 key 是否存在,存在则加一 increment,不存在则设置 key过期时间
$id = 1;
// 判断key是否存在
$check = $redis->exists('qps_' . $id);
if ($check) {
// +1
$redis->increment('qps_' . $id);
echo $count =$redis->get('qps_' . $id);
// 限制每分钟10次
if ($count > 10) {
echo '当前id请求频率过高';
exit;
}
} else {
$redis->set('qps_' . $id, 1, 60); //初始值1
}
最佳答案
其他 2 个回答
-
https://www.yiichina.com/doc/guide/2.0/rest-rate-limiting 参考这个,框架自带的,很好用
PHP学院的中学生
注册时间:2018-10-23
最后登录:2024-09-23
在线时长:168小时13分
最后登录:2024-09-23
在线时长:168小时13分
- 粉丝29
- 金钱4725
- 威望30
- 积分6705