Documentation
¶
Overview ¶
Package ratelimiter
A Rate Limiter implementation in Golang ¶
::quickstart::
package main
import (
"fmt" "github.com/billcoding/ratelimiter" "time"
)
func main() { l := ratelimiter.NewLimiter(ratelimiter.CacheBucket(1, 3, 1, time.Second, ratelimiter.DefaultGenerator(), nil)) fmt.Println(l.Try()) // output: {} true fmt.Println(l.Try()) // output: <nil> false }
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func CacheBucket ¶
func CacheBucket(initSize, maxSize, cacheMaxSize int, duration time.Duration, generator Generator, event *Event) *cacheBucket
CacheBucket return new cacheToken
func DefaultGenerator ¶
func DefaultGenerator() *defaultGenerator
Types ¶
Click to show internal directories.
Click to hide internal directories.