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

源码地址

相关推荐
焰火19991 小时前
[Java][SpringBoot]集成Redis实现Session共享
java·redis
摇滚侠1 小时前
Spring Boot 3零基础教程,整合Redis,笔记12
spring boot·redis·笔记
荣淘淘1 小时前
互联网大厂Java求职面试全景实战解析(涵盖Spring Boot、微服务及云原生技术)
java·spring boot·redis·jwt·cloud native·microservices·interview
本就一无所有 何惧重新开始3 小时前
Redis技术应用
java·数据库·spring boot·redis·后端·缓存
阿巴~阿巴~5 小时前
Redis重大版本演进全解析:从2.6到7.0
服务器·数据库·redis·ubuntu·缓存·centos
ajsbxi7 小时前
【Redis】缓存读/写操作流程
redis·笔记·spring·缓存·bootstrap
洲覆9 小时前
基于 clangd 搭建 Redis 6.2 源码阅读与调试环境
开发语言·数据库·redis·缓存
凯子坚持 c9 小时前
Redis 事务深度解析:从基础到实践
数据库·redis·缓存
zl97989918 小时前
Redis-持久化之AOF
redis