scache

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Jul 15, 2022 License: MIT Imports: 10 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrClientNil error = errors.New("redis client is nil")

Redis客户端空

View Source
var ErrKeyFnNil error = errors.New("key generater is nil")
View Source
var ErrKeyFormat error = errors.New("key format error")
View Source
var ErrKeyGenerate error = errors.New("key generate error")
View Source
var ErrPrefixNil error = errors.New("key prefix is nil")

Functions

func DefaultClient

func DefaultClient() *redis.Client

DefaultClient 获取默认的客户端

func DefaultRedisLocker

func DefaultRedisLocker(client *redis.Client, biz string) locker.Locker

DefaultRedisLocker 创建基于Redis的分布式锁

func GetClient

func GetClient(name string) (*redis.Client, error)

GetClient 获取Redis池链接中的链接

func NewClient

func NewClient(cfg Config) (*redis.Client, error)

NewClient 初始化 创建新的Redis链接 默认会加入连接池

func NewDefaultClient

func NewDefaultClient(cfg Config) error

NewDefaultClient 创建默认的Redis链接

func RedisLockerDeleter

func RedisLockerDeleter(d RedisKeyValueDeleter) locker.LockerDeleter

RedisLockerDeleter

func RedisLockerReader

func RedisLockerReader(r RedisKeyValueStringReader) locker.LockerReader

RedisLockerReader

func RedisLockerWriter

func RedisLockerWriter(w RedisKeyValueWriter, expire time.Duration) locker.LockerWriter

RedisLockerWriter

func SetDefaultClient

func SetDefaultClient(c *redis.Client)

SetDefaultClient 设置默认链接 未加锁,需要程序启动时初始化

Types

type Config

type Config struct {
	Name     string // instance name
	Addr     string // host:port address.
	Username string // username
	Password string // password
	DB       int    // selected db
	PoolSize int    // connection pool size, must > 3
}

Config Redis配置

type Pair

type Pair struct {
	Key   string
	Value string
}

Pair 键值对

type RedisKeyGenerator

type RedisKeyGenerator func(param interface{}) (string, error)

RedisKeyGenerator Redis Key生成

type RedisKeyValueDeleter

type RedisKeyValueDeleter func(ctx context.Context, param interface{}) error

Redis K-V类型删除

func NewRedisKeyValueDeleter

func NewRedisKeyValueDeleter(hands ...RedisOptionHandler) RedisKeyValueDeleter

NewRedisKeyValueDeleter 缓存删除

type RedisKeyValueObjectReader

type RedisKeyValueObjectReader func(ctx context.Context, params interface{}, out interface{}) error

Redis K-V类型读取

func NewRedisKeyValueObjectReader

func NewRedisKeyValueObjectReader(hands ...RedisOptionHandler) RedisKeyValueObjectReader

NewRedisKeyValueReader 自定义Redis读取

type RedisKeyValueStringReader

type RedisKeyValueStringReader func(ctx context.Context, params interface{}) (interface{}, error)

Redis K-V类型读取

func NewRedisKeyValueStringReader

func NewRedisKeyValueStringReader(hands ...RedisOptionHandler) RedisKeyValueStringReader

NewRedisKeyValueReader 自定义Redis读取

type RedisKeyValueWriter

type RedisKeyValueWriter func(ctx context.Context, params interface{}, expire time.Duration) error

Redis K-V类型写入

func NewRedisKeyValueWriter

func NewRedisKeyValueWriter(hands ...RedisOptionHandler) RedisKeyValueWriter

NewRedisKeyValueWriter 创建新的缓存写入

type RedisListObjectReader

type RedisListObjectReader func(context.Context, interface{}) error

RedisListObjectReader Redis List类型读取,返回结果为对象

func NewRedisListObjectReader

func NewRedisListObjectReader(hands ...RedisOptionHandler) RedisListObjectReader

NewRedisListObjectReader 创建新的Redis List对象读取,读取器返回值为对象

type RedisListStringReader

type RedisListStringReader func(context.Context) (string, error)

RedisListStringReader Redis List类型读取,返回结果为字符串

func NewRedisListStringReader

func NewRedisListStringReader(hands ...RedisOptionHandler) RedisListStringReader

NewRedisListReader 创建新的Redis队列读取,读取器返回值为字符串

type RedisListWriter

type RedisListWriter func(context.Context, interface{}) error

Redis List类型写入

func NewRedisListWriter

func NewRedisListWriter(hands ...RedisOptionHandler) RedisListWriter

NewRedisListWriter 创建新的Redis队列写入对象

type RedisOptionHandler

type RedisOptionHandler func(*RedisOptions)

RedisOptionHandler 配置选项

func WithClient

func WithClient(client *redis.Client) RedisOptionHandler

WithClient 配置客户端实例

func WithKeyFn

WithKeyFn 配置KEY生成方法

func WithPrefix

func WithPrefix(pre string) RedisOptionHandler

WithPrefix 配置KEY前缀

type RedisOptions

type RedisOptions struct {
	KeyFn  RedisKeyGenerator
	Prefix string
	Client *redis.Client
}

选项

func DefaultRedisOptions

func DefaultRedisOptions() RedisOptions

创建默认的Redis配置

Jump to

Keyboard shortcuts

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