cache

package
v0.0.0-...-9941648 Latest Latest
Warning

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

Go to latest
Published: Jan 28, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func NewRedisCli

func NewRedisCli(r RedisOptions) *redis.Client

func NewRedisClusterCli

func NewRedisClusterCli(r RedisClusterOptions) *redis.ClusterClient

Types

type BloomFilter

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

func NewBloomFilter

func NewBloomFilter(client *redis.Client, key string, errorRate float64, capacity int) *BloomFilter

尽量选 大质数(素数)(如 10007、100003)

func (*BloomFilter) Add

func (bf *BloomFilter) Add(ctx context.Context, value string) error

func (*BloomFilter) Exists

func (bf *BloomFilter) Exists(ctx context.Context, value string) error

type DistributedLock

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

func NewDistributedLock

func NewDistributedLock(client *redis.Client, key string, value string, expiration time.Duration) *DistributedLock

func (*DistributedLock) TryLock

func (dl *DistributedLock) TryLock(ctx context.Context) error

func (*DistributedLock) Unlock

func (dl *DistributedLock) Unlock(ctx context.Context) error

type RedLock

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

TODO

type RedisClusterOptions

type RedisClusterOptions struct {
	Addrs []string
}

type RedisOptions

type RedisOptions struct {
	Addr     string
	Password string
	DB       int
}

type TokenBucket

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

func NewTokenBucket

func NewTokenBucket(client *redis.Client, key string, capacity int64, rate float64) *TokenBucket

func (*TokenBucket) Decrease

func (tb *TokenBucket) Decrease(ctx context.Context, tokens int64) error

Jump to

Keyboard shortcuts

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