AdaptiveLimiterRegistry

Registry for managing multiple named adaptive limiters.

Example usage:

val registry = AdaptiveLimiterRegistry.create()

val apiLimiter = registry.getOrCreate("downstream-api") {
initialLimit = 20
}

Types

Link copied to clipboard

Functions

Link copied to clipboard
suspend fun get(name: String): AdaptiveLimiter?

Gets an existing adaptive limiter by name.

Link copied to clipboard

Gets statistics for all adaptive limiters.

Link copied to clipboard
suspend fun getNames(): Set<String>

Gets all adaptive limiter names in the registry.

Link copied to clipboard
suspend fun getOrCreate(name: String, configure: AdaptiveLimiterConfigBuilder.() -> Unit? = null): AdaptiveLimiter

Gets an existing adaptive limiter or creates a new one.

Link copied to clipboard
suspend fun remove(name: String): AdaptiveLimiter?

Removes an adaptive limiter from the registry.