基于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) ;
    }

源码地址

相关推荐
玖玥拾1 小时前
Lua 基础语法(八) Unity Huatuo (HybridCLR)
开发语言·unity·游戏引擎·lua
YHHLAI2 小时前
基于 Next.js 16 + Redis 的全栈笔记博客系统
javascript·redis·笔记
x10n914 小时前
Postman 汉化完整指南
测试工具·lua·postman
码哥字节15 小时前
AI一天出百本书,写不出我被Redis坑的那三天三夜
redis·ai编程工具
莫得感情 o1 天前
Redis 10 · 集群:16384槽、扩缩容与请求路由
redis·缓存
乐观的Terry1 天前
Redis生产环境redis-conf配置教程
数据库·redis
SeaTunnel1 天前
Redis 数据迁移不用写脚本:SeaTunnel 支持 String、Hash、Set、ZSet 四种数据类型
数据库·redis·哈希算法·数据迁移·seatunnel·数据同步
莫得感情 o1 天前
Redis 11 · 缓存问题:穿透、击穿与雪崩
redis·缓存
kiss strong1 天前
redis服务器登录(内网环境,无法使用客户端)
数据库·redis·缓存
hweiyu002 天前
Redis命令:UNLINK
redis·缓存