基于Redis + Lua脚本语言 + 注解:构建高效的请求接口限流方案

为什么接口限流

  • 黑客疯狂请求系统接口的某一个接口 而且每次都需要数据库io操作 。如果并发量很大。导致的结果就是 宕机。

解决方案很多 今天我们就先来基于Redis + Lua脚本语言 + 注解:构建高效的请求接口限流方案

限流效果 ~~~~连续点击 源码地址在最下面

lua安装、环境变量配置、ldea插件选择

帮助文档1
帮助文档2

编写lua限流脚本

在 ClassPathResource 的lua下

RedisLimitConfig

注解CurrentLimiter

aop解析注解CurrentLimiter

使用controller

java 复制代码
  @GetMapping("redis-lua-limiter-annotation")
    @ApiOperation("接口限流-注解-aop")
    @CurrentLimiter(limit = 3) // 每秒最多请求三次
    public ResponseVO<String> redisLuaLimitAnnotation() {
        String name = redisServiceUtil.get("name");
        return ResponseVO.success(name) ;
    }

源码地址

相关推荐
M--Y5 小时前
Redis的主从复制和哨兵
redis·主从复制·哨兵
ego.iblacat5 小时前
Redis 核心概念与部署
数据库·redis·缓存
卢傢蕊7 小时前
NoSQL 之 Redis 配置与优化
redis·nosql
炸炸鱼.7 小时前
NoSQL 之 Redis 配置与优化
redis·nosql
J超会运7 小时前
Redis高效配置与优化指南
redis
苏渡苇7 小时前
5 分钟跑起 Redis(Docker 版)
数据库·redis·缓存·docker·redis入门
Jul1en_8 小时前
【Redis】Zset类型、命令及应用场景
数据库·redis·缓存
亚空间仓鼠8 小时前
NoSQL数据库Redis(一):数据库基础
数据库·redis·nosql
一只游鱼9 小时前
langchain4j+redis+持久化存储记忆
java·redis·langchain4j
亚空间仓鼠11 小时前
NoSQL数据库Redis(三):主从复制
redis·bootstrap·nosql