Skip to main content

Configuring rate-limiter policies

SlidingWindowLimiter

import { SlidingWindowLimiter } from "@daiso-tech/core/rate-limiter/policies"
import { TimeSpan } from "@daiso-tech/core/time-span"

new SlidingWindowLimiter({
/**
* The time span in which attempts are active before reseting.
* The field is optional.
*
*/
window: TimeSpan.fromSeconds(1)

/**
* The field is optional.
* ```
*/
margin: TimeSpan.fromSeconds(4).divide(4)
})

FixedWindowLimiter

import { FixedWindowLimiter } from "@daiso-tech/core/rate-limiter/policies"
import { TimeSpan } from "@daiso-tech/core/time-span"

new FixedWindowLimiter({
/**
* The time span in which attempts are active before reseting.
* The field is optional.
*/
window: TimeSpan.fromSeconds(1)
})

Further information

For further information refer to @daiso-tech/core/rate-limiter API docs.