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 分钟前
启动阶段 KL15 未接通时触发报文超时监控
运维·服务器·网络
程序员-Benothing8 分钟前
Linux网络排错命令:ping、traceroute、mtr、dig、nslookup
linux·运维·网络
sejinan22 分钟前
新版!IPTV直播源列表 V1.7 正式发布:接口大厅与会员定制生态解读
开发语言·php
我不会起名字32223 分钟前
Redis RDB 落盘时的 fork 停顿:COW 机制与 3 个降低影响的配置
redis·持久化·fork·cow·rdb
AbandonForce29 分钟前
Linux 网络:序列化与反序列化
linux·运维·网络
Source.Liu42 分钟前
【A11】服务器底层权限表笔记
运维·服务器·笔记
蓝胖的四次元口袋43 分钟前
Redis 知识梳理(4)
数据库·redis
先知后行。1 小时前
gdb、asan、Valgrind
linux·运维·服务器