PHP+REDIS设置请求限流(设置1秒内最大请求数1000QPS)

复制代码
双十一期间要做活动,设置商品请求限流,护航秒杀活动正常进行!

#设置1秒内最多同时1000请求
$maxNum = 1000;
$redisKey = 'GoldMall:Huodong:gid'.$g_id.'_'.date('s');
$onlineNum = (int)$this->redis->get($redisKey);
if($onlineNum){
    $onlineNum++;
    $this->redis->set($redisKey,$onlineNum,1);
}else{
    $onlineNum = 1;
    $this->redis->set($redisKey,$onlineNum,1);
}
if($onlineNum>$maxNum){
    $this->jsonResponse(401,"服务器繁忙请稍后再试~{$onlineNum}");
}

以上代码经过实践测试,OK的!

相关推荐
实心儿儿5 小时前
Linux —— 线程控制(1)
linux·运维·服务器
亦良Cool6 小时前
VMware虚拟机ubuntu瘦身,解决虚拟机越用越大
linux·运维·ubuntu
星辰&与海8 小时前
KVM + QEMU虚拟化方案
linux·运维
宋浮檀s8 小时前
应急响应——恶意流量&攻击行为识别
linux·运维·网络·网络安全·应急响应
REDcker8 小时前
Linux OverlayFS详解
java·linux·运维
橙子圆1238 小时前
Redis知识9之集群
数据库·redis·缓存
zizle_lin8 小时前
WSL的系统安装和部分环境配置(按需操作)
运维
lwx9148529 小时前
Linux系统中用户锁定后如何解锁
linux·运维·服务器
鱼鳞_9 小时前
苍穹外卖-Day08(缓存套餐)
java·redis·缓存
難釋懷9 小时前
Nginx防盗链配置
运维·nginx