Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewCounter ¶
NewCounter @Description: 单机版计数器 构造函数 @param rate @param cycle @return *counter
func NewLeakyBucket ¶
func NewLeakyBucket(rate int) *leakyBucket
Types ¶
type RedisTokenBucket ¶
type RedisTokenBucket struct {
// contains filtered or unexported fields
}
A RedisTokenBucket controls how frequently events are allowed to happen with in one second.
func NewTokenLimiter ¶
func NewTokenLimiter(rate, burst int, store *redis.Client, key string) *RedisTokenBucket
NewTokenLimiter returns a new TokenLimiter that allows events up to rate and permits bursts of at most burst tokens.
func (*RedisTokenBucket) Allow ¶
func (lim *RedisTokenBucket) Allow() bool
Allow is shorthand for AllowN(time.Now(), 1).
type TokenBucket ¶
type TokenBucket struct {
// contains filtered or unexported fields
}
TokenBucket 单机版令牌桶
func NewTokenBucket ¶
func NewTokenBucket(maxBucket int, sec time.Duration) *TokenBucket
func (*TokenBucket) Allow ¶
func (t *TokenBucket) Allow() bool
Click to show internal directories.
Click to hide internal directories.