当前位置: 首页 > article >正文

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


http://www.kler.cn/a/370327.html

相关文章:

  • 【正则表达式】从0开始学习正则表达式
  • 利用免费GIS工具箱实现高斯泼溅切片,将 PLY 格式转换为 3dtiles
  • 1.7 ChatGPT:引领AI对话革命的致胜之道
  • [JavaScript] 运算符详解
  • word转pdf
  • 【网络协议】RFC3164-The BSD syslog Protocol
  • 【数据结构与算法】力扣 92. 反转链表 II
  • 浅谈钓鱼攻防之道-制作免杀excel文件钓鱼
  • Spring Boot:植物健康监测的智能先锋
  • 卡方检验方法概述与类型——四格表和R*C表卡方检验案例
  • Vxe UI vue vxe-table 表格中使用下拉表格,单元格渲染下拉表格
  • AJAX——设置 CORS 响应头实现跨域
  • Go 交互式CLI - survey
  • 玻色因hydroxypropyl tetrahydropyrantriol——普西因
  • Marimo:开源的响应式Python笔记本,特别适合数据分析工作者,丰富的UI组件并能转成生成应用
  • HF上的 llava-med-zh-instruct-60k 数据预处理代码
  • K8s-DashBoard部署与管理
  • 【Java语言】类和对象
  • 车载导航测试:确保驾驶者的精准导航体验
  • Java项目实战II基于微信小程序的医院管理系统(开发文档+数据库+源码)
  • Laravel5 抓取第三方网站图片,存储到本地
  • Stable Diffusion视频插件Ebsynth Utility安装方法
  • npm设置镜像源
  • JavaScript 的 axios 实现文件下载功能
  • NVR批量管理软件/平台EasyNVR多个NVR同时管理支持UDP和TCP传输协议
  • 海外著名门户媒体发稿之科技时报Tech Times - 大舍传媒