Class CacheRateLimiterConfig

java.lang.Object
io.datarouter.ratelimiter.CacheRateLimiterConfig

public class CacheRateLimiterConfig
extends java.lang.Object
  • Nested Class Summary

    Nested Classes 
    Modifier and Type Class Description
    static class  CacheRateLimiterConfig.CacheRateLimiterConfigBuilder  
  • Field Summary

    Fields 
    Modifier and Type Field Description
    int bucketIntervalMs  
    java.lang.Integer bucketTimeInterval  
    java.time.Duration expiration  
    java.lang.Long maxAverageRequests  
    java.lang.Long maxSpikeRequests  
    java.lang.String name  
    java.lang.Integer numIntervals  
    java.util.concurrent.TimeUnit unit  
  • Constructor Summary

    Constructors 
    Constructor Description
    CacheRateLimiterConfig​(java.lang.String name, java.lang.Long maxAverageRequests, java.lang.Long maxSpikeRequests, java.lang.Integer numIntervals, java.lang.Integer bucketTimeInterval, java.util.concurrent.TimeUnit unit)  
  • Method Summary

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • CacheRateLimiterConfig

      public CacheRateLimiterConfig​(java.lang.String name, java.lang.Long maxAverageRequests, java.lang.Long maxSpikeRequests, java.lang.Integer numIntervals, java.lang.Integer bucketTimeInterval, java.util.concurrent.TimeUnit unit)
      Parameters:
      name - name of the ratelimiter
      maxAverageRequests - threshold average number of requests
      maxSpikeRequests - threshold max number of requests
      numIntervals - number of buckets
      bucketTimeInterval - length of each bucket
      unit - time unit of bucketTimeInterval