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

相关推荐
⑩-11 分钟前
Redis(1)
数据库·redis·缓存
m0_495562781 小时前
Swift的逃逸闭包
服务器·php·swift
wanhengidc1 小时前
全面了解云手机的安全性
运维·服务器·游戏·智能手机·云计算
Elastic 中国社区官方博客1 小时前
Observability:适用于 PHP 的 OpenTelemetry:EDOT PHP 加入 OpenTelemetry 项目
大数据·开发语言·人工智能·elasticsearch·搜索引擎·全文检索·php
menge23331 小时前
Linux DNS域名解析服务器练习
linux·运维·服务器
努力成为一个程序猿.2 小时前
Clickhouse数据副本和分片
运维·clickhouse·debian
emiya_saber3 小时前
Linux 进程调度管理
linux·运维·服务器
yangzhi_emo3 小时前
配置dns主从服务
linux·运维·服务器
陈果然DeepVersion4 小时前
Java大厂面试真题:从Spring Boot到AI微服务的三轮技术拷问(二)
spring boot·redis·spring cloud·微服务·ai·java面试·rag
SongYuLong的博客4 小时前
Linux开源代码汇总
linux·运维·服务器