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的!

相关推荐
newxtc30 分钟前
【四川政务服务网-注册安全分析报告】
运维·selenium·安全·政务·安全爆破
算是难了35 分钟前
Docker基础总结
运维·docker·容器
weixin_445476681 小时前
Vue+redis全局添加水印解决方案
前端·vue.js·redis
@菜菜_达1 小时前
Nginx的安装与配置(window系统)
运维·nginx
Okailon2 小时前
Debian12上安裝免费开源的CMS Drupal 11 机顶盒实例
开源·php·cms
熙xi.2 小时前
DHT11温湿度传感器Linux驱动开发完整流程
linux·运维·驱动开发
Deamon Tree2 小时前
Redis的过期策略以及内存淘汰机制
java·数据库·redis·缓存
fouryears_234172 小时前
Redis缓存更新策略
java·spring boot·redis·spring
Yyyy4822 小时前
Ubuntu部署 Kubernetes1.23
linux·运维·ubuntu
人工智能训练3 小时前
在 Ubuntu 系统中利用 conda 创建虚拟环境安装 sglang 大模型引擎的完整步骤、版本查看方法、启动指令及验证方式
linux·运维·服务器·人工智能·ubuntu·conda·sglang