Package-level declarations

Types

Link copied to clipboard

글로벌 Rate Limiter 싱글톤 관리자

Link copied to clipboard
data class RateLimitConfig(val capacity: Int = 50, val refillRate: Int = 50, val enabled: Boolean = true, val waitTimeoutMillis: Long = 60000)

Rate Limiter 설정 데이터 클래스

Link copied to clipboard
interface RateLimiter

Rate Limiter 인터페이스

Link copied to clipboard
data class RateLimiterStatus(val availableTokens: Int, val capacity: Int, val refillRate: Int, val isEnabled: Boolean, val estimatedWaitTimeMs: Long)

Rate Limiter의 상태를 나타내는 데이터 클래스

Link copied to clipboard

Rate Limiting 관련 예외의 부모 클래스

Link copied to clipboard
data class RateLimitingSettings(val yahoo: RateLimitConfig = yahooDefault(), val fred: RateLimitConfig = fredDefault(), val businessInsider: RateLimitConfig = businessInsiderDefault())

Rate Limiting 설정 모음

Link copied to clipboard

Token Bucket 알고리즘을 기반으로 한 Rate Limiter 구현