基于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 小时前
Redis:Redis 数据类型
数据库·redis·缓存
产幻少年4 小时前
redis位图
数据库·redis·缓存
短剑重铸之日4 小时前
《7天学会Redis》Day 4 - 高可用架构设计与实践
数据库·redis·缓存
難釋懷5 小时前
认识Redis
数据库·redis·缓存
极客先躯5 小时前
老版本Postman请求脚本编写指南:从Async/Await到回调函数的完整迁移方案
测试工具·lua·postman
超级种码5 小时前
Redis:Redis脚本
数据库·redis·缓存
超级种码5 小时前
Redis:Redis 命令详解
数据库·redis·bootstrap
此生只爱蛋7 小时前
【Redis】事务
数据库·redis·缓存
橘子真甜~7 小时前
Reids命令原理与应用5 - Redis 主从同步与高可用集群
运维·网络·数据库·redis·缓存·redis集群·redis高可用
2501_948194987 小时前
RN for OpenHarmony AnimeHub项目实战:放送时间表页面开发
数据库·redis·缓存