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就正常服务了。

相关推荐
IT_陈寒11 小时前
SpringBoot自动配置没生效?你可能漏了这个注解
前端·人工智能·后端
长明12 小时前
C#项目组织与概念梳理
后端·c#
AOwhisky12 小时前
Kubernetes(K8s)学习笔记(第十四期):集群存储与有状态应用(下篇):StatefulSet 有状态应用管理
redis·笔记·mysql·云原生·kubernetes·云计算·k8s
xn713312 小时前
个人网站站外分发怎么做归因?我给 XBSTACK 补了一套 UTM 追踪规则
后端·低代码
用户23307130747912 小时前
JUC 并发容器与工具
后端
威武的花瓣12 小时前
细说ASP.NET的各种异步操作
后端·asp.net·php
漂亮的摩托12 小时前
如何编写一个SpringBoot项目告警推送的Starter
java·spring boot·后端
天丁o12 小时前
Spring Boot + uni-app 智慧考勤闭环 Demo:打卡记录、异常状态和日统计如何复用到企业系统
spring boot·uni-app·mybatis plus·企业管理系统·考勤系统
任性的芝麻12 小时前
ASP.NET MVC 中的异步方式
后端·asp.net·mvc
雨师@12 小时前
go语言项目--实例化(图书管理)--006
开发语言·后端·golang