Documentation
¶
Index ¶
- Variables
- func RestRedisInstance()
- type Cache
- type GoCache
- func (g *GoCache[T]) BRPop(timeout time.Duration, key string) (T, error)
- func (g *GoCache[T]) Del(key string) error
- func (g *GoCache[T]) Exists(key string) (bool, error)
- func (g *GoCache[T]) Expire(key string, expiration time.Duration) error
- func (g *GoCache[T]) Get(key string) (T, error)
- func (g *GoCache[T]) Incr(key string) (int64, error)
- func (g *GoCache[T]) IsInitialized() bool
- func (g *GoCache[T]) RPush(key string, value T) error
- func (g *GoCache[T]) Set(key string, value T, expiration time.Duration) error
- type LoaderFunc
- type Queue
- type RedisCache
- func (r *RedisCache[T]) BRPop(timeout time.Duration, key string) (value interface{}, err error)
- func (r *RedisCache[T]) Del(key string) error
- func (r *RedisCache[T]) Exists(key string) (bool, error)
- func (r *RedisCache[T]) Expire(key string, expiration time.Duration) error
- func (r *RedisCache[T]) Get(key string) (T, error)
- func (r *RedisCache[T]) Incr(key string) (int64, error)
- func (r *RedisCache[T]) IsInitialized() bool
- func (r *RedisCache[T]) RPush(key string, value interface{}) error
- func (r *RedisCache[T]) Set(key string, value T, expiration time.Duration) error
- type RedisConfig
- type Tool
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrCacheMiss = errors.New("cache miss")
ErrCacheMiss 表示缓存未命中的错误
View Source
var SimpleTool = func(ctx *gin.Context) *Tool[any] { return NewCacheTool[any](ctx, caches, nil) }
Functions ¶
func RestRedisInstance ¶ added in v0.0.11
func RestRedisInstance()
Types ¶
type Cache ¶
type Cache[T any] interface { IsInitialized() bool Get(key string) (T, error) Set(key string, value T, expiration time.Duration) error Del(key string) error Exists(key string) (bool, error) RPush(key string, value T) error BRPop(timeout time.Duration, key string) (value interface{}, err error) Incr(key string) (int64, error) Expire(key string, expiration time.Duration) error }
Cache 是一个通用的缓存接口,定义了基本的缓存操作
type GoCache ¶
type GoCache[T any] struct { // contains filtered or unexported fields }
GoCache 是 go-cache 的实现,支持泛型,并使用通道进行阻塞操作
func NewGoCache ¶
NewGoCache 创建一个新的 GoCache 实例 defaultExpiration: 默认过期时间 cleanupInterval: 清理间隔
func (*GoCache[T]) IsInitialized ¶ added in v0.0.11
IsInitialized 检查缓存是否已初始化
type RedisCache ¶
RedisCache 是 Redis 的实现
var (
RedisInstance *RedisCache[any]
)
func GetRedisInstance ¶
func GetRedisInstance[T any](r ...*RedisCache[T]) *RedisCache[T]
GetRedisInstance 返回单例的 RedisCache 实例
func NewRedisCache ¶
func NewRedisCache[T any](cfg RedisConfig) (*RedisCache[T], error)
NewRedisCache 创建一个新的 RedisCache 实例
func (*RedisCache[T]) BRPop ¶ added in v0.0.11
func (r *RedisCache[T]) BRPop(timeout time.Duration, key string) (value interface{}, err error)
BRPop 从 Redis 中弹出数据 timeout 为超时时间 key 为队列名
func (*RedisCache[T]) Del ¶ added in v0.0.11
func (r *RedisCache[T]) Del(key string) error
Del 从 Redis 中删除数据
func (*RedisCache[T]) Exists ¶ added in v0.0.11
func (r *RedisCache[T]) Exists(key string) (bool, error)
Exists 检查 Redis 中是否存在指定 key
func (*RedisCache[T]) Expire ¶ added in v0.0.11
func (r *RedisCache[T]) Expire(key string, expiration time.Duration) error
Expire 设置 Redis 中 key 的过期时间
func (*RedisCache[T]) Get ¶
func (r *RedisCache[T]) Get(key string) (T, error)
func (*RedisCache[T]) Incr ¶ added in v0.0.11
func (r *RedisCache[T]) Incr(key string) (int64, error)
Incr 递增 Redis 中的值
func (*RedisCache[T]) IsInitialized ¶ added in v0.0.11
func (r *RedisCache[T]) IsInitialized() bool
IsInitialized bool
func (*RedisCache[T]) RPush ¶ added in v0.0.11
func (r *RedisCache[T]) RPush(key string, value interface{}) error
RPush 将数据存入 Redis
type RedisConfig ¶
RedisConfig holds the Redis configuration parameters
Click to show internal directories.
Click to hide internal directories.