Class RateLimitConfig

java.lang.Object
com.rale4j.sb.config.RateLimitConfig

@Configuration public class RateLimitConfig extends Object
Configuration class for setting up rate limiting strategies.
  • Constructor Details

    • RateLimitConfig

      public RateLimitConfig()
  • Method Details

    • guavaRateLimiter

      @Bean public RateLimitStrategy guavaRateLimiter()
      Creates a Guava-based rate limiter bean.
      Returns:
      a new instance of GuavaRateLimiter
    • redisRateLimiter

      @Bean public RateLimitStrategy redisRateLimiter(org.springframework.data.redis.core.RedisTemplate<String,String> redisTemplate)
      Creates a Redis-based rate limiter bean.
      Parameters:
      redisTemplate - the Redis template to be used by the rate limiter
      Returns:
      a new instance of RedisRateLimiter
    • tokenBucketRateLimiter

      @Bean public RateLimitStrategy tokenBucketRateLimiter()
      Creates a token bucket-based rate limiter bean.
      Returns:
      a new instance of TokenBucketRateLimiter
    • resilience4jRateLimiter

      @Bean public RateLimitStrategy resilience4jRateLimiter()
      Creates a Resilience4j-based rate limiter bean.
      Returns:
      a new instance of Resilience4jRateLimiter
    • bucket4jRateLimiter

      @Bean public RateLimitStrategy bucket4jRateLimiter()
      Creates a Bucket4j-based rate limiter bean.
      Returns:
      a new instance of Bucket4jRateLimiter