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

源码地址

相关推荐
KNeeg_12 小时前
黑马点评完整代码(RabbitMQ优化)+简历编写+面试重点 ⭐
java·redis·后端·spring·面试·职场和发展·黑马点评
期待のcode13 小时前
Redis的数据清理机制
数据库·redis·缓存
阿维的博客日记14 小时前
Redis 和 Caffeine 构建的多级缓存,如何保持数据一致性?
数据库·redis·缓存
aXin_ya15 小时前
微服务 第十天 (Redis多级缓存)
java·redis·微服务
人道领域17 小时前
【黑马点评日记】社交平台用户关注功能全解析Feed流相关操作
java·开发语言·数据库·redis·python
旷世奇才李先生20 小时前
Redis 7\.0实战:分布式缓存与高可用集群搭建全指南
redis·分布式·缓存
洛水水21 小时前
Redis 协议与异步通信深度解析
数据库·redis·缓存
后端漫漫1 天前
Redis 客户端工具体系
数据库·redis·缓存
超级无敌葛大侠1 天前
Redis主从复制
java·redis
ErizJ1 天前
Redis|学习笔记
redis·笔记·学习