Springboot整合Redis的Cluster集群进行API限流

Redis天生就是限流的好帮手!因为它有key,有value,有expire过期时间。我们把ip和url作为表示某个接口的key,而value就是这个ip下访问该url接口的次数,过期时间就是设定的限时时间

我们把限时时间设定为3s,次数设置为9次,意思就是:某一ip在3s内最多只能对该url接口访问9次。每访问一次,value就加1:

如果3s内次数都不超过9,那么该键值对会在3s后过期。
如果次数(redis存储的value)在3s内超过9,就停止该url的正常服务,直到过期时间一到,就全部清零,该url就正常服务了。

相关推荐
Badman几秒前
Cursor入门提效指南
后端·cursor
武子康11 分钟前
大数据-145 Apache Kudu 架构与实战:RowSet、分区与 Raft 全面解析
大数据·后端·nosql
间彧12 分钟前
Spring @ControllerAdvice详解与应用实战
后端
间彧16 分钟前
@ControllerAdvice与AOP切面编程在处理异常时有什么区别和各自的优势?
后端
user_admin_god19 分钟前
基于Layui Vue Admin + Spring Boot 3.x 的企业级前后端分离管理系统
vue.js·spring boot·layui
不见长安在39 分钟前
redis集群下如何使用lua脚本
数据库·redis·lua
间彧41 分钟前
什么是Region多副本容灾
后端
爱敲代码的北42 分钟前
WPF容器控件布局与应用学习笔记
后端
爱敲代码的北42 分钟前
XAML语法与静态资源应用
后端
清空mega44 分钟前
从零开始搭建 flask 博客实验(5)
后端·python·flask