Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewThrottledTransport ¶
func NewThrottledTransport(limitPeriod time.Duration, requestCount int, transportWrap http.RoundTripper) http.RoundTripper
NewThrottledTransport creates a new ThrottledTransport with the specified rate limit.
Types ¶
type Limiter ¶
Limiter is an interface for rate limiting functionality. It defines a method for taking a rate-limited action.
func NewLocalLimiter ¶
NewLocalLimiter creates a new local rate limiter with specified maximum and burstable requests per second.
func NewRedisLimiter ¶
NewRedisLimiter creates a new Redis-based rate limiter.
type Redis ¶
type Redis struct { *redis_rate.Limiter // Embedded Redis rate limiter MaxRPS int // Maximum requests per second allowed }
Redis represents a rate limiter using Redis.
type ThrottledTransport ¶
type ThrottledTransport struct {
// contains filtered or unexported fields
}
ThrottledTransport is a custom HTTP transport that implements rate limiting.
Click to show internal directories.
Click to hide internal directories.