RedisRateLimiter
Defined in: src/redis.ts:164
Sliding-window RateLimiterAlgorithm shared through Redis. Run it with RateLimiterStrategy:
builder.addStrategy((s) => new RateLimiterStrategy(new RedisRateLimiter({ client, key: 'api', permitLimit: 100, window: '1m' }), { queueTimeout: '2s' }, s));The now passed to acquire is ignored: the window runs on the Redis server’s clock.
Implements
Section titled “Implements”Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new RedisRateLimiter(
options):RedisRateLimiter
Defined in: src/redis.ts:171
Parameters
Section titled “Parameters”options
Section titled “options”Returns
Section titled “Returns”RedisRateLimiter
Properties
Section titled “Properties”permitLimit
Section titled “permitLimit”
readonlypermitLimit:number
Defined in: src/redis.ts:165
Implementation of
Section titled “Implementation of”RateLimiterAlgorithm.permitLimit
Methods
Section titled “Methods”acquire()
Section titled “acquire()”acquire(
permits):Promise<AcquireResult>
Defined in: src/redis.ts:182
Takes permits if they fit, else says how many ms until they would. permits is never above permitLimit.
Parameters
Section titled “Parameters”permits
Section titled “permits”number
Returns
Section titled “Returns”Promise<AcquireResult>