• 2024-03-21Go+Gin 接口防止用户频繁访问
    在Go+Gin框架中,可以利用中间件实现API防洪(防止用户频繁访问)功能。一种常见的防洪技术是利用Go的漏桶算法或令牌桶算法进行流量控制。以下面的Go代码为例,演示了一个简单的令牌桶方式的中间件:packagemainimport("net/http""time""github.com/gin-gonic/gin"
  • 2023-04-06SpringBoot中如何编写一个优雅的限流组件?
    很早以前,我曾写过两篇介绍如何在SpringBoot中使用Guava和Redis实现接口限流的文章。具体包括:使用Guava实现单机令牌桶限流使用Redis实现分布式限流现在,一个问题摆在我们面前:如何将这两种限流机制整合到同一个组件中,以便用户随时切换呢?显然,我们需要定义一个通用的限流组件,将
  • 2023-01-18Spring Cloud Gateway 网关限流
    可用性和可靠性对于所有web应用程序和API来说都是至关重要的。当系统流量突然增加时,会影响应用程序的服务质量,甚至可能导致所有用户的服务中断。一种解决方案是为基础
  • 2022-12-13架构高可用之限流-抽刀断水水更流
    上图中是一个水坝泄洪的图,那么,对于软件系统,如何使用最方便的可编程的方式增加服务限流能力呢?下面我结合一个常规的springCloud项目实践了一把,希望他山之石可以攻玉。背
  • 2022-08-28[Google] LeetCode 359 Logger Rate Limiter
    Designaloggersystemthatreceivesastreamofmessagesalongwiththeirtimestamps.Eachuniquemessageshouldonlybeprintedatmostevery10seconds(i.e