ratelimit

package
v1.6.12 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 4, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type RateLimiter

type RateLimiter interface {
	Allow(ctx context.Context) error
	Wait(ctx context.Context) error
	Stats() Stats
}

type Stats

type Stats struct {
	Allowed  int64
	Rejected int64
	WaitTime time.Duration
	HitRate  float64
}

type TokenBucketLimiter

type TokenBucketLimiter struct {
	// contains filtered or unexported fields
}

func NewTokenBucketLimiter

func NewTokenBucketLimiter(capacity int64, refillRate int64) *TokenBucketLimiter

func (*TokenBucketLimiter) Allow

func (t *TokenBucketLimiter) Allow(ctx context.Context) error

func (*TokenBucketLimiter) Stats

func (t *TokenBucketLimiter) Stats() Stats

func (*TokenBucketLimiter) Wait

func (t *TokenBucketLimiter) Wait(ctx context.Context) error

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL