redis

package
v0.0.0-...-d5d5ef8 Latest Latest
Warning

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

Go to latest
Published: Feb 1, 2024 License: MIT Imports: 25 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// ClusterType means redis cluster.
	ClusterType = "cluster"
	// NodeType means redis node.
	NodeType = "node"
	// Nil is an alias of redis.Nil.
	Nil = red.Nil
)

Variables

View Source
var (
	// ErrEmptyHost is an error that indicates no redis host is set.
	ErrEmptyHost = errors.New("empty redis host")
	// ErrEmptyType is an error that indicates no redis type is set.
	ErrEmptyType = errors.New("empty redis type")
	// ErrEmptyKey is an error that indicates no redis key is set.
	ErrEmptyKey = errors.New("empty redis key")
)
View Source
var (
	// ErrNilNode is an error that indicates a nil redis node.
	ErrNilNode = errors.New("nil redis node")
)

Functions

func SetSlowThreshold

func SetSlowThreshold(threshold time.Duration)

SetSlowThreshold sets the slow threshold.

Types

type ClosableNode

type ClosableNode interface {
	RedisNode
	Close()
}

ClosableNode interface represents a closable redis node.

func CreateBlockingNode

func CreateBlockingNode(r *Redis) (ClosableNode, error)

CreateBlockingNode returns a ClosableNode.

type FloatCmd

type FloatCmd = red.FloatCmd

FloatCmd is an alias of redis.FloatCmd.

type FloatPair

type FloatPair struct {
	Key   string
	Score float64
}

A FloatPair is a key/pair for float set used in redis zet.

type GeoLocation

type GeoLocation = red.GeoLocation

GeoLocation is used with GeoAdd to add geospatial location.

type GeoPos

type GeoPos = red.GeoPos

GeoPos is used to represent a geo position.

type GeoRadiusQuery

type GeoRadiusQuery = red.GeoRadiusQuery

GeoRadiusQuery is used with GeoRadius to query geospatial index.

type IntCmd

type IntCmd = red.IntCmd

IntCmd is an alias of redis.IntCmd.

type Map

type Map map[string]string

Map is an alias of map[string]string.

type Option

type Option func(r *Redis)

Option defines the method to customize a Redis.

func Cluster

func Cluster() Option

Cluster customizes the given Redis as a cluster.

func WithPass

func WithPass(pass string) Option

WithPass customizes the given Redis with given password.

func WithTLS

func WithTLS() Option

WithTLS customizes the given Redis with TLS enabled.

type Pair

type Pair struct {
	Key   string
	Score int64
}

A Pair is a key/pair set used in redis zset.

type Pipeliner

type Pipeliner = red.Pipeliner

Pipeliner is an alias of redis.Pipeliner.

type Redis

type Redis struct {
	Addr string
	Type string
	Pass string
	DB   int
	// Maximum number of retries before giving up.
	// Default is 3 retries; -1 (not 0) disables retries.
	MaxRetries int
	// Minimum number of idle connections which is useful when establishing
	// new connection is slow. default 8
	MinIdleConns int
	// contains filtered or unexported fields
}

Redis defines a redis node/cluster. It is thread-safe.

func MustNewRedis

func MustNewRedis(conf RedisConf, opts ...Option) *Redis

MustNewRedis returns a Redis with given options.

func New

func New(addr string, opts ...Option) *Redis

New returns a Redis with given options. Deprecated: use MustNewRedis or NewRedis instead.

func NewRedis

func NewRedis(conf RedisConf, opts ...Option) (*Redis, error)

NewRedis returns a Redis with given options.

func (*Redis) BitCount

func (s *Redis) BitCount(key string, start, end int64) (int64, error)

BitCount is redis bitcount command implementation.

func (*Redis) BitCountCtx

func (s *Redis) BitCountCtx(ctx context.Context, key string, start, end int64) (val int64, err error)

BitCountCtx is redis bitcount command implementation.

func (*Redis) BitOpAnd

func (s *Redis) BitOpAnd(destKey string, keys ...string) (int64, error)

BitOpAnd is redis bit operation (and) command implementation.

func (*Redis) BitOpAndCtx

func (s *Redis) BitOpAndCtx(ctx context.Context, destKey string, keys ...string) (val int64, err error)

BitOpAndCtx is redis bit operation (and) command implementation.

func (*Redis) BitOpNot

func (s *Redis) BitOpNot(destKey, key string) (int64, error)

BitOpNot is redis bit operation (not) command implementation.

func (*Redis) BitOpNotCtx

func (s *Redis) BitOpNotCtx(ctx context.Context, destKey, key string) (val int64, err error)

BitOpNotCtx is redis bit operation (not) command implementation.

func (*Redis) BitOpOr

func (s *Redis) BitOpOr(destKey string, keys ...string) (int64, error)

BitOpOr is redis bit operation (or) command implementation.

func (*Redis) BitOpOrCtx

func (s *Redis) BitOpOrCtx(ctx context.Context, destKey string, keys ...string) (val int64, err error)

BitOpOrCtx is redis bit operation (or) command implementation.

func (*Redis) BitOpXor

func (s *Redis) BitOpXor(destKey string, keys ...string) (int64, error)

BitOpXor is redis bit operation (xor) command implementation.

func (*Redis) BitOpXorCtx

func (s *Redis) BitOpXorCtx(ctx context.Context, destKey string, keys ...string) (val int64, err error)

BitOpXorCtx is redis bit operation (xor) command implementation.

func (*Redis) BitPos

func (s *Redis) BitPos(key string, bit, start, end int64) (int64, error)

BitPos is redis bitpos command implementation.

func (*Redis) BitPosCtx

func (s *Redis) BitPosCtx(ctx context.Context, key string, bit, start, end int64) (val int64, err error)

BitPosCtx is redis bitpos command implementation.

func (*Redis) Blpop

func (s *Redis) Blpop(node RedisNode, key string) (string, error)

Blpop uses passed in redis connection to execute blocking queries. Doesn't benefit from pooling redis connections of blocking queries

func (*Redis) BlpopCtx

func (s *Redis) BlpopCtx(ctx context.Context, node RedisNode, key string) (string, error)

BlpopCtx uses passed in redis connection to execute blocking queries. Doesn't benefit from pooling redis connections of blocking queries

func (*Redis) BlpopEx

func (s *Redis) BlpopEx(node RedisNode, key string) (string, bool, error)

BlpopEx uses passed in redis connection to execute blpop command. The difference against Blpop is that this method returns a bool to indicate success.

func (*Redis) BlpopExCtx

func (s *Redis) BlpopExCtx(ctx context.Context, node RedisNode, key string) (string, bool, error)

BlpopExCtx uses passed in redis connection to execute blpop command. The difference against Blpop is that this method returns a bool to indicate success.

func (*Redis) BlpopWithTimeout

func (s *Redis) BlpopWithTimeout(node RedisNode, timeout time.Duration, key string) (string, error)

BlpopWithTimeout uses passed in redis connection to execute blpop command. Control blocking query timeout

func (*Redis) BlpopWithTimeoutCtx

func (s *Redis) BlpopWithTimeoutCtx(ctx context.Context, node RedisNode, timeout time.Duration,
	key string) (string, error)

BlpopWithTimeoutCtx uses passed in redis connection to execute blpop command. Control blocking query timeout

func (*Redis) Client

func (s *Redis) Client() *red.Client

func (*Redis) Decr

func (s *Redis) Decr(key string) (int64, error)

Decr is the implementation of redis decr command.

func (*Redis) DecrCtx

func (s *Redis) DecrCtx(ctx context.Context, key string) (val int64, err error)

DecrCtx is the implementation of redis decr command.

func (*Redis) Decrby

func (s *Redis) Decrby(key string, decrement int64) (int64, error)

Decrby is the implementation of redis decrby command.

func (*Redis) DecrbyCtx

func (s *Redis) DecrbyCtx(ctx context.Context, key string, decrement int64) (val int64, err error)

DecrbyCtx is the implementation of redis decrby command.

func (*Redis) Del

func (s *Redis) Del(keys ...string) (int64, error)

Del deletes keys.

func (*Redis) DelCtx

func (s *Redis) DelCtx(ctx context.Context, keys ...string) (val int64, err error)

DelCtx deletes keys.

func (*Redis) Eval

func (s *Redis) Eval(script string, keys []string, args ...any) (any, error)

Eval is the implementation of redis eval command.

func (*Redis) EvalCtx

func (s *Redis) EvalCtx(ctx context.Context, script string, keys []string,
	args ...any) (val any, err error)

EvalCtx is the implementation of redis eval command.

func (*Redis) EvalSha

func (s *Redis) EvalSha(sha string, keys []string, args ...any) (any, error)

EvalSha is the implementation of redis evalsha command.

func (*Redis) EvalShaCtx

func (s *Redis) EvalShaCtx(ctx context.Context, sha string, keys []string,
	args ...any) (val any, err error)

EvalShaCtx is the implementation of redis evalsha command.

func (*Redis) Exists

func (s *Redis) Exists(key string) (bool, error)

Exists is the implementation of redis exists command.

func (*Redis) ExistsCtx

func (s *Redis) ExistsCtx(ctx context.Context, key string) (val bool, err error)

ExistsCtx is the implementation of redis exists command.

func (*Redis) Expire

func (s *Redis) Expire(key string, expire time.Duration) error

Expire is the implementation of redis expire command.

func (*Redis) ExpireCtx

func (s *Redis) ExpireCtx(ctx context.Context, key string, expire time.Duration) error

ExpireCtx is the implementation of redis expire command.

func (*Redis) Expireat

func (s *Redis) Expireat(key string, expireTime int64) error

Expireat is the implementation of redis expireat command.

func (*Redis) ExpireatCtx

func (s *Redis) ExpireatCtx(ctx context.Context, key string, expireTime int64) error

ExpireatCtx is the implementation of redis expireat command.

func (*Redis) GeoAdd

func (s *Redis) GeoAdd(key string, geoLocation ...*GeoLocation) (int64, error)

GeoAdd is the implementation of redis geoadd command.

func (*Redis) GeoAddCtx

func (s *Redis) GeoAddCtx(ctx context.Context, key string, geoLocation ...*GeoLocation) (
	val int64, err error)

GeoAddCtx is the implementation of redis geoadd command.

func (*Redis) GeoDist

func (s *Redis) GeoDist(key, member1, member2, unit string) (float64, error)

GeoDist is the implementation of redis geodist command.

func (*Redis) GeoDistCtx

func (s *Redis) GeoDistCtx(ctx context.Context, key, member1, member2, unit string) (
	val float64, err error)

GeoDistCtx is the implementation of redis geodist command.

func (*Redis) GeoHash

func (s *Redis) GeoHash(key string, members ...string) ([]string, error)

GeoHash is the implementation of redis geohash command.

func (*Redis) GeoHashCtx

func (s *Redis) GeoHashCtx(ctx context.Context, key string, members ...string) (
	val []string, err error)

GeoHashCtx is the implementation of redis geohash command.

func (*Redis) GeoPos

func (s *Redis) GeoPos(key string, members ...string) ([]*GeoPos, error)

GeoPos is the implementation of redis geopos command.

func (*Redis) GeoPosCtx

func (s *Redis) GeoPosCtx(ctx context.Context, key string, members ...string) (
	val []*GeoPos, err error)

GeoPosCtx is the implementation of redis geopos command.

func (*Redis) GeoRadius

func (s *Redis) GeoRadius(key string, longitude, latitude float64, query *GeoRadiusQuery) (
	[]GeoLocation, error)

GeoRadius is the implementation of redis georadius command.

func (*Redis) GeoRadiusByMember

func (s *Redis) GeoRadiusByMember(key, member string, query *GeoRadiusQuery) ([]GeoLocation, error)

GeoRadiusByMember is the implementation of redis georadiusbymember command.

func (*Redis) GeoRadiusByMemberCtx

func (s *Redis) GeoRadiusByMemberCtx(ctx context.Context, key, member string,
	query *GeoRadiusQuery) (val []GeoLocation, err error)

GeoRadiusByMemberCtx is the implementation of redis georadiusbymember command.

func (*Redis) GeoRadiusCtx

func (s *Redis) GeoRadiusCtx(ctx context.Context, key string, longitude, latitude float64,
	query *GeoRadiusQuery) (val []GeoLocation, err error)

GeoRadiusCtx is the implementation of redis georadius command.

func (*Redis) Get

func (s *Redis) Get(key string) (string, error)

Get is the implementation of redis get command.

func (*Redis) GetBit

func (s *Redis) GetBit(key string, offset int64) (int64, error)

GetBit is the implementation of redis getbit command.

func (*Redis) GetBitCtx

func (s *Redis) GetBitCtx(ctx context.Context, key string, offset int64) (val int64, err error)

GetBitCtx is the implementation of redis getbit command.

func (*Redis) GetCtx

func (s *Redis) GetCtx(ctx context.Context, key string) (val string, err error)

GetCtx is the implementation of redis get command.

func (*Redis) GetSet

func (s *Redis) GetSet(key string, value interface{}) (string, error)

GetSet is the implementation of redis getset command.

func (*Redis) GetSetCtx

func (s *Redis) GetSetCtx(ctx context.Context, key string, value interface{}) (val string, err error)

GetSetCtx is the implementation of redis getset command.

func (*Redis) Hdel

func (s *Redis) Hdel(key string, fields ...string) (bool, error)

Hdel is the implementation of redis hdel command.

func (*Redis) HdelCtx

func (s *Redis) HdelCtx(ctx context.Context, key string, fields ...string) (val bool, err error)

HdelCtx is the implementation of redis hdel command.

func (*Redis) Hexists

func (s *Redis) Hexists(key, field string) (bool, error)

Hexists is the implementation of redis hexists command.

func (*Redis) HexistsCtx

func (s *Redis) HexistsCtx(ctx context.Context, key, field string) (val bool, err error)

HexistsCtx is the implementation of redis hexists command.

func (*Redis) Hget

func (s *Redis) Hget(key, field string) (string, error)

Hget is the implementation of redis hget command.

func (*Redis) HgetCtx

func (s *Redis) HgetCtx(ctx context.Context, key, field string) (val string, err error)

HgetCtx is the implementation of redis hget command.

func (*Redis) Hgetall

func (s *Redis) Hgetall(key string) (map[string]string, error)

Hgetall is the implementation of redis hgetall command.

func (*Redis) HgetallCtx

func (s *Redis) HgetallCtx(ctx context.Context, key string) (val map[string]string, err error)

HgetallCtx is the implementation of redis hgetall command.

func (*Redis) Hincrby

func (s *Redis) Hincrby(key, field string, increment int) (int64, error)

Hincrby is the implementation of redis hincrby command.

func (*Redis) HincrbyCtx

func (s *Redis) HincrbyCtx(ctx context.Context, key, field string, increment int) (val int64, err error)

HincrbyCtx is the implementation of redis hincrby command.

func (*Redis) HincrbyFloat

func (s *Redis) HincrbyFloat(key, field string, increment float64) (float64, error)

HincrbyFloat is the implementation of redis hincrbyfloat command.

func (*Redis) HincrbyFloatCtx

func (s *Redis) HincrbyFloatCtx(ctx context.Context, key, field string, increment float64) (val float64, err error)

HincrbyFloatCtx is the implementation of redis hincrbyfloat command.

func (*Redis) Hkeys

func (s *Redis) Hkeys(key string) ([]string, error)

Hkeys is the implementation of redis hkeys command.

func (*Redis) HkeysCtx

func (s *Redis) HkeysCtx(ctx context.Context, key string) (val []string, err error)

HkeysCtx is the implementation of redis hkeys command.

func (*Redis) Hlen

func (s *Redis) Hlen(key string) (int64, error)

Hlen is the implementation of redis hlen command.

func (*Redis) HlenCtx

func (s *Redis) HlenCtx(ctx context.Context, key string) (val int64, err error)

HlenCtx is the implementation of redis hlen command.

func (*Redis) Hmget

func (s *Redis) Hmget(key string, fields ...string) ([]string, error)

Hmget is the implementation of redis hmget command.

func (*Redis) HmgetCtx

func (s *Redis) HmgetCtx(ctx context.Context, key string, fields ...string) (val []string, err error)

HmgetCtx is the implementation of redis hmget command.

func (*Redis) Hmset

func (s *Redis) Hmset(key string, fieldsAndValues map[string]string) error

Hmset is the implementation of redis hmset command.

func (*Redis) HmsetCtx

func (s *Redis) HmsetCtx(ctx context.Context, key string, fieldsAndValues map[string]string) error

HmsetCtx is the implementation of redis hmset command.

func (*Redis) Hscan

func (s *Redis) Hscan(key string, cursor uint64, match string, count int64) (
	keys []string, cur uint64, err error)

Hscan is the implementation of redis hscan command.

func (*Redis) HscanCtx

func (s *Redis) HscanCtx(ctx context.Context, key string, cursor uint64, match string, count int64) (
	keys []string, cur uint64, err error)

HscanCtx is the implementation of redis hscan command.

func (*Redis) Hset

func (s *Redis) Hset(key, field string, value interface{}) error

Hset is the implementation of redis hset command.

func (*Redis) HsetCtx

func (s *Redis) HsetCtx(ctx context.Context, key, field string, value interface{}) error

HsetCtx is the implementation of redis hset command.

func (*Redis) Hsetnx

func (s *Redis) Hsetnx(key, field string, value interface{}) (bool, error)

Hsetnx is the implementation of redis hsetnx command.

func (*Redis) HsetnxCtx

func (s *Redis) HsetnxCtx(ctx context.Context, key, field string, value interface{}) (val bool, err error)

HsetnxCtx is the implementation of redis hsetnx command.

func (*Redis) Hvals

func (s *Redis) Hvals(key string) ([]string, error)

Hvals is the implementation of redis hvals command.

func (*Redis) HvalsCtx

func (s *Redis) HvalsCtx(ctx context.Context, key string) (val []string, err error)

HvalsCtx is the implementation of redis hvals command.

func (*Redis) Incr

func (s *Redis) Incr(key string) (int64, error)

Incr is the implementation of redis incr command.

func (*Redis) IncrCtx

func (s *Redis) IncrCtx(ctx context.Context, key string) (val int64, err error)

IncrCtx is the implementation of redis incr command.

func (*Redis) Incrby

func (s *Redis) Incrby(key string, increment int64) (int64, error)

Incrby is the implementation of redis incrby command.

func (*Redis) IncrbyCtx

func (s *Redis) IncrbyCtx(ctx context.Context, key string, increment int64) (val int64, err error)

IncrbyCtx is the implementation of redis incrby command.

func (*Redis) IncrbyFloat

func (s *Redis) IncrbyFloat(key string, increment float64) (float64, error)

IncrbyFloat is the implementation of redis hincrbyfloat command.

func (*Redis) IncrbyFloatCtx

func (s *Redis) IncrbyFloatCtx(ctx context.Context, key string, increment float64) (val float64, err error)

IncrbyFloatCtx is the implementation of redis hincrbyfloat command.

func (*Redis) Keys

func (s *Redis) Keys(pattern string) ([]string, error)

Keys is the implementation of redis keys command.

func (*Redis) KeysCtx

func (s *Redis) KeysCtx(ctx context.Context, pattern string) (val []string, err error)

KeysCtx is the implementation of redis keys command.

func (*Redis) Lindex

func (s *Redis) Lindex(key string, index int64) (string, error)

Lindex is the implementation of redis lindex command.

func (*Redis) LindexCtx

func (s *Redis) LindexCtx(ctx context.Context, key string, index int64) (val string, err error)

LindexCtx is the implementation of redis lindex command.

func (*Redis) Llen

func (s *Redis) Llen(key string) (int64, error)

Llen is the implementation of redis llen command.

func (*Redis) LlenCtx

func (s *Redis) LlenCtx(ctx context.Context, key string) (val int64, err error)

LlenCtx is the implementation of redis llen command.

func (*Redis) Lpop

func (s *Redis) Lpop(key string) (string, error)

Lpop is the implementation of redis lpop command.

func (*Redis) LpopCount

func (s *Redis) LpopCount(key string, count int) ([]string, error)

LpopCount is the implementation of redis lpopCount command.

func (*Redis) LpopCountCtx

func (s *Redis) LpopCountCtx(ctx context.Context, key string, count int) (val []string, err error)

LpopCountCtx is the implementation of redis lpopCount command.

func (*Redis) LpopCtx

func (s *Redis) LpopCtx(ctx context.Context, key string) (val string, err error)

LpopCtx is the implementation of redis lpop command.

func (*Redis) Lpush

func (s *Redis) Lpush(key string, values ...any) (int64, error)

Lpush is the implementation of redis lpush command.

func (*Redis) LpushCtx

func (s *Redis) LpushCtx(ctx context.Context, key string, values ...any) (val int64, err error)

LpushCtx is the implementation of redis lpush command.

func (*Redis) Lrange

func (s *Redis) Lrange(key string, start, stop int) ([]string, error)

Lrange is the implementation of redis lrange command.

func (*Redis) LrangeCtx

func (s *Redis) LrangeCtx(ctx context.Context, key string, start, stop int) (val []string, err error)

LrangeCtx is the implementation of redis lrange command.

func (*Redis) Lrem

func (s *Redis) Lrem(key string, count int, value interface{}) (int64, error)

Lrem is the implementation of redis lrem command.

func (*Redis) LremCtx

func (s *Redis) LremCtx(ctx context.Context, key string, count int, value interface{}) (val int64, err error)

LremCtx is the implementation of redis lrem command.

func (*Redis) Ltrim

func (s *Redis) Ltrim(key string, start, stop int64) error

Ltrim is the implementation of redis ltrim command.

func (*Redis) LtrimCtx

func (s *Redis) LtrimCtx(ctx context.Context, key string, start, stop int64) error

LtrimCtx is the implementation of redis ltrim command.

func (*Redis) Mget

func (s *Redis) Mget(keys ...string) ([]string, error)

Mget is the implementation of redis mget command.

func (*Redis) MgetCtx

func (s *Redis) MgetCtx(ctx context.Context, keys ...string) (val []string, err error)

MgetCtx is the implementation of redis mget command.

func (*Redis) Persist

func (s *Redis) Persist(key string) (bool, error)

Persist is the implementation of redis persist command.

func (*Redis) PersistCtx

func (s *Redis) PersistCtx(ctx context.Context, key string) (val bool, err error)

PersistCtx is the implementation of redis persist command.

func (*Redis) Pfadd

func (s *Redis) Pfadd(key string, values ...any) (bool, error)

Pfadd is the implementation of redis pfadd command.

func (*Redis) PfaddCtx

func (s *Redis) PfaddCtx(ctx context.Context, key string, values ...any) (val bool, err error)

PfaddCtx is the implementation of redis pfadd command.

func (*Redis) Pfcount

func (s *Redis) Pfcount(key string) (int64, error)

Pfcount is the implementation of redis pfcount command.

func (*Redis) PfcountCtx

func (s *Redis) PfcountCtx(ctx context.Context, key string) (val int64, err error)

PfcountCtx is the implementation of redis pfcount command.

func (*Redis) Pfmerge

func (s *Redis) Pfmerge(dest string, keys ...string) error

Pfmerge is the implementation of redis pfmerge command.

func (*Redis) PfmergeCtx

func (s *Redis) PfmergeCtx(ctx context.Context, dest string, keys ...string) error

PfmergeCtx is the implementation of redis pfmerge command.

func (*Redis) Ping

func (s *Redis) Ping() bool

Ping is the implementation of redis ping command.

func (*Redis) PingCtx

func (s *Redis) PingCtx(ctx context.Context) (val bool)

PingCtx is the implementation of redis ping command.

func (*Redis) Pipelined

func (s *Redis) Pipelined(fn func(Pipeliner) error) error

Pipelined lets fn execute pipelined commands.

func (*Redis) PipelinedCtx

func (s *Redis) PipelinedCtx(ctx context.Context, fn func(Pipeliner) error) error

PipelinedCtx lets fn execute pipelined commands. Results need to be retrieved by calling Pipeline.Exec()

func (*Redis) Rpop

func (s *Redis) Rpop(key string) (string, error)

Rpop is the implementation of redis rpop command.

func (*Redis) RpopCount

func (s *Redis) RpopCount(key string, count int) ([]string, error)

RpopCount is the implementation of redis rpopCount command.

func (*Redis) RpopCountCtx

func (s *Redis) RpopCountCtx(ctx context.Context, key string, count int) (val []string, err error)

RpopCountCtx is the implementation of redis rpopCount command.

func (*Redis) RpopCtx

func (s *Redis) RpopCtx(ctx context.Context, key string) (val string, err error)

RpopCtx is the implementation of redis rpop command.

func (*Redis) Rpush

func (s *Redis) Rpush(key string, values ...any) (int64, error)

Rpush is the implementation of redis rpush command.

func (*Redis) RpushCtx

func (s *Redis) RpushCtx(ctx context.Context, key string, values ...any) (val int64, err error)

RpushCtx is the implementation of redis rpush command.

func (*Redis) Sadd

func (s *Redis) Sadd(key string, values ...any) (int64, error)

Sadd is the implementation of redis sadd command.

func (*Redis) SaddCtx

func (s *Redis) SaddCtx(ctx context.Context, key string, values ...any) (val int64, err error)

SaddCtx is the implementation of redis sadd command.

func (*Redis) Scan

func (s *Redis) Scan(cursor uint64, match string, count int64) (keys []string, cur uint64, err error)

Scan is the implementation of redis scan command.

func (*Redis) ScanCtx

func (s *Redis) ScanCtx(ctx context.Context, cursor uint64, match string, count int64) (
	keys []string, cur uint64, err error)

ScanCtx is the implementation of redis scan command.

func (*Redis) Scard

func (s *Redis) Scard(key string) (int64, error)

Scard is the implementation of redis scard command.

func (*Redis) ScardCtx

func (s *Redis) ScardCtx(ctx context.Context, key string) (val int64, err error)

ScardCtx is the implementation of redis scard command.

func (*Redis) ScriptLoad

func (s *Redis) ScriptLoad(script string) (string, error)

ScriptLoad is the implementation of redis script load command.

func (*Redis) ScriptLoadCtx

func (s *Redis) ScriptLoadCtx(ctx context.Context, script string) (string, error)

ScriptLoadCtx is the implementation of redis script load command.

func (*Redis) ScriptRun

func (s *Redis) ScriptRun(script *Script, keys []string, args ...any) (any, error)

ScriptRun is the implementation of *redis.Script run command.

func (*Redis) ScriptRunCtx

func (s *Redis) ScriptRunCtx(ctx context.Context, script *Script, keys []string, args ...any) (val any, err error)

ScriptRunCtx is the implementation of *redis.Script run command.

func (*Redis) Sdiff

func (s *Redis) Sdiff(keys ...string) ([]string, error)

Sdiff is the implementation of redis sdiff command.

func (*Redis) SdiffCtx

func (s *Redis) SdiffCtx(ctx context.Context, keys ...string) (val []string, err error)

SdiffCtx is the implementation of redis sdiff command.

func (*Redis) Sdiffstore

func (s *Redis) Sdiffstore(destination string, keys ...string) (int64, error)

Sdiffstore is the implementation of redis sdiffstore command.

func (*Redis) SdiffstoreCtx

func (s *Redis) SdiffstoreCtx(ctx context.Context, destination string, keys ...string) (
	val int64, err error)

SdiffstoreCtx is the implementation of redis sdiffstore command.

func (*Redis) Set

func (s *Redis) Set(key string, value interface{}) error

Set is the implementation of redis set command.

func (*Redis) SetBit

func (s *Redis) SetBit(key string, offset int64, value int) (int64, error)

SetBit is the implementation of redis setbit command.

func (*Redis) SetBitCtx

func (s *Redis) SetBitCtx(ctx context.Context, key string, offset int64, value int) (val int64, err error)

SetBitCtx is the implementation of redis setbit command.

func (*Redis) SetCtx

func (s *Redis) SetCtx(ctx context.Context, key string, value interface{}) error

SetCtx is the implementation of redis set command.

func (*Redis) Setex

func (s *Redis) Setex(key string, value interface{}, seconds int) error

Setex is the implementation of redis setex command.

func (*Redis) SetexCtx

func (s *Redis) SetexCtx(ctx context.Context, key string, value interface{}, seconds int) error

SetexCtx is the implementation of redis setex command.

func (*Redis) Setnx

func (s *Redis) Setnx(key string, value interface{}) (bool, error)

Setnx is the implementation of redis setnx command.

func (*Redis) SetnxCtx

func (s *Redis) SetnxCtx(ctx context.Context, key string, value interface{}) (val bool, err error)

SetnxCtx is the implementation of redis setnx command.

func (*Redis) SetnxEx

func (s *Redis) SetnxEx(key string, value interface{}, seconds int) (bool, error)

SetnxEx is the implementation of redis setnx command with expire.

func (*Redis) SetnxExCtx

func (s *Redis) SetnxExCtx(ctx context.Context, key string, value interface{}, seconds int) (val bool, err error)

SetnxExCtx is the implementation of redis setnx command with expire.

func (*Redis) Sinter

func (s *Redis) Sinter(keys ...string) ([]string, error)

Sinter is the implementation of redis sinter command.

func (*Redis) SinterCtx

func (s *Redis) SinterCtx(ctx context.Context, keys ...string) (val []string, err error)

SinterCtx is the implementation of redis sinter command.

func (*Redis) Sinterstore

func (s *Redis) Sinterstore(destination string, keys ...string) (int64, error)

Sinterstore is the implementation of redis sinterstore command.

func (*Redis) SinterstoreCtx

func (s *Redis) SinterstoreCtx(ctx context.Context, destination string, keys ...string) (
	val int64, err error)

SinterstoreCtx is the implementation of redis sinterstore command.

func (*Redis) Sismember

func (s *Redis) Sismember(key string, value any) (bool, error)

Sismember is the implementation of redis sismember command.

func (*Redis) SismemberCtx

func (s *Redis) SismemberCtx(ctx context.Context, key string, value any) (val bool, err error)

SismemberCtx is the implementation of redis sismember command.

func (*Redis) Smembers

func (s *Redis) Smembers(key string) ([]string, error)

Smembers is the implementation of redis smembers command.

func (*Redis) SmembersCtx

func (s *Redis) SmembersCtx(ctx context.Context, key string) (val []string, err error)

SmembersCtx is the implementation of redis smembers command.

func (*Redis) Spop

func (s *Redis) Spop(key string) (string, error)

Spop is the implementation of redis spop command.

func (*Redis) SpopCtx

func (s *Redis) SpopCtx(ctx context.Context, key string) (val string, err error)

SpopCtx is the implementation of redis spop command.

func (*Redis) Srandmember

func (s *Redis) Srandmember(key string, count int) ([]string, error)

Srandmember is the implementation of redis srandmember command.

func (*Redis) SrandmemberCtx

func (s *Redis) SrandmemberCtx(ctx context.Context, key string, count int) (val []string, err error)

SrandmemberCtx is the implementation of redis srandmember command.

func (*Redis) Srem

func (s *Redis) Srem(key string, values ...any) (int64, error)

Srem is the implementation of redis srem command.

func (*Redis) SremCtx

func (s *Redis) SremCtx(ctx context.Context, key string, values ...any) (val int64, err error)

SremCtx is the implementation of redis srem command.

func (*Redis) Sscan

func (s *Redis) Sscan(key string, cursor uint64, match string, count int64) (
	keys []string, cur uint64, err error)

Sscan is the implementation of redis sscan command.

func (*Redis) SscanCtx

func (s *Redis) SscanCtx(ctx context.Context, key string, cursor uint64, match string, count int64) (
	keys []string, cur uint64, err error)

SscanCtx is the implementation of redis sscan command.

func (*Redis) String

func (s *Redis) String() string

String returns the string representation of s.

func (*Redis) Sunion

func (s *Redis) Sunion(keys ...string) ([]string, error)

Sunion is the implementation of redis sunion command.

func (*Redis) SunionCtx

func (s *Redis) SunionCtx(ctx context.Context, keys ...string) (val []string, err error)

SunionCtx is the implementation of redis sunion command.

func (*Redis) Sunionstore

func (s *Redis) Sunionstore(destination string, keys ...string) (int64, error)

Sunionstore is the implementation of redis sunionstore command.

func (*Redis) SunionstoreCtx

func (s *Redis) SunionstoreCtx(ctx context.Context, destination string, keys ...string) (
	val int64, err error)

SunionstoreCtx is the implementation of redis sunionstore command.

func (*Redis) Ttl

func (s *Redis) Ttl(key string) (time.Duration, error)

Ttl is the implementation of redis ttl command.

func (*Redis) TtlCtx

func (s *Redis) TtlCtx(ctx context.Context, key string) (val time.Duration, err error)

TtlCtx is the implementation of redis ttl command.

func (*Redis) TxPipelined

func (s *Redis) TxPipelined(fn func(Pipeliner) error) error

Pipelined lets fn execute pipelined commands.

func (*Redis) TxPipelinedCtx

func (s *Redis) TxPipelinedCtx(ctx context.Context, fn func(Pipeliner) error) error

PipelinedCtx lets fn execute pipelined commands. Results need to be retrieved by calling Pipeline.Exec()

func (*Redis) ZRevRangeWithScores

func (s *Redis) ZRevRangeWithScores(key string, start, stop int64) ([]Pair, error)

ZRevRangeWithScores is the implementation of redis zrevrange command with scores. Deprecated: use ZrevrangeWithScores instead.

func (*Redis) ZRevRangeWithScoresByFloat

func (s *Redis) ZRevRangeWithScoresByFloat(key string, start, stop int64) ([]FloatPair, error)

ZRevRangeWithScoresByFloat is the implementation of redis zrevrange command with scores by float. Deprecated: use ZrevrangeWithScoresByFloat instead.

func (*Redis) ZRevRangeWithScoresByFloatCtx

func (s *Redis) ZRevRangeWithScoresByFloatCtx(ctx context.Context, key string, start, stop int64) (
	val []FloatPair, err error)

ZRevRangeWithScoresByFloatCtx is the implementation of redis zrevrange command with scores by float. Deprecated: use ZrevrangeWithScoresByFloatCtx instead.

func (*Redis) ZRevRangeWithScoresCtx

func (s *Redis) ZRevRangeWithScoresCtx(ctx context.Context, key string, start, stop int64) (
	val []Pair, err error)

ZRevRangeWithScoresCtx is the implementation of redis zrevrange command with scores. Deprecated: use ZrevrangeWithScoresCtx instead.

func (*Redis) Zadd

func (s *Redis) Zadd(key string, score int64, value interface{}) (bool, error)

Zadd is the implementation of redis zadd command.

func (*Redis) ZaddCtx

func (s *Redis) ZaddCtx(ctx context.Context, key string, score int64, value interface{}) (
	val bool, err error)

ZaddCtx is the implementation of redis zadd command.

func (*Redis) ZaddFloat

func (s *Redis) ZaddFloat(key string, score float64, value interface{}) (bool, error)

ZaddFloat is the implementation of redis zadd command.

func (*Redis) ZaddFloatCtx

func (s *Redis) ZaddFloatCtx(ctx context.Context, key string, score float64, value interface{}) (
	val bool, err error)

ZaddFloatCtx is the implementation of redis zadd command.

func (*Redis) Zadds

func (s *Redis) Zadds(key string, ps ...Pair) (int64, error)

Zadds is the implementation of redis zadds command.

func (*Redis) ZaddsCtx

func (s *Redis) ZaddsCtx(ctx context.Context, key string, ps ...Pair) (val int64, err error)

ZaddsCtx is the implementation of redis zadds command.

func (*Redis) Zcard

func (s *Redis) Zcard(key string) (int64, error)

Zcard is the implementation of redis zcard command.

func (*Redis) ZcardCtx

func (s *Redis) ZcardCtx(ctx context.Context, key string) (val int64, err error)

ZcardCtx is the implementation of redis zcard command.

func (*Redis) Zcount

func (s *Redis) Zcount(key string, start, stop int64) (int64, error)

Zcount is the implementation of redis zcount command.

func (*Redis) ZcountCtx

func (s *Redis) ZcountCtx(ctx context.Context, key string, start, stop int64) (val int64, err error)

ZcountCtx is the implementation of redis zcount command.

func (*Redis) Zincrby

func (s *Redis) Zincrby(key string, increment int64, field string) (int64, error)

Zincrby is the implementation of redis zincrby command.

func (*Redis) ZincrbyCtx

func (s *Redis) ZincrbyCtx(ctx context.Context, key string, increment int64, field string) (
	val int64, err error)

ZincrbyCtx is the implementation of redis zincrby command.

func (*Redis) Zrange

func (s *Redis) Zrange(key string, start, stop int64) ([]string, error)

Zrange is the implementation of redis zrange command.

func (*Redis) ZrangeCtx

func (s *Redis) ZrangeCtx(ctx context.Context, key string, start, stop int64) (
	val []string, err error)

ZrangeCtx is the implementation of redis zrange command.

func (*Redis) ZrangeWithScores

func (s *Redis) ZrangeWithScores(key string, start, stop int64) ([]Pair, error)

ZrangeWithScores is the implementation of redis zrange command with scores.

func (*Redis) ZrangeWithScoresByFloat

func (s *Redis) ZrangeWithScoresByFloat(key string, start, stop int64) ([]FloatPair, error)

ZrangeWithScoresByFloat is the implementation of redis zrange command with scores by float64.

func (*Redis) ZrangeWithScoresByFloatCtx

func (s *Redis) ZrangeWithScoresByFloatCtx(ctx context.Context, key string, start, stop int64) (
	val []FloatPair, err error)

ZrangeWithScoresByFloatCtx is the implementation of redis zrange command with scores by float64.

func (*Redis) ZrangeWithScoresCtx

func (s *Redis) ZrangeWithScoresCtx(ctx context.Context, key string, start, stop int64) (
	val []Pair, err error)

ZrangeWithScoresCtx is the implementation of redis zrange command with scores.

func (*Redis) ZrangebyscoreWithScores

func (s *Redis) ZrangebyscoreWithScores(key string, start, stop int64) ([]Pair, error)

ZrangebyscoreWithScores is the implementation of redis zrangebyscore command with scores.

func (*Redis) ZrangebyscoreWithScoresAndLimit

func (s *Redis) ZrangebyscoreWithScoresAndLimit(key string, start, stop int64,
	page, size int) ([]Pair, error)

ZrangebyscoreWithScoresAndLimit is the implementation of redis zrangebyscore command with scores and limit.

func (*Redis) ZrangebyscoreWithScoresAndLimitCtx

func (s *Redis) ZrangebyscoreWithScoresAndLimitCtx(ctx context.Context, key string, start,
	stop int64, page, size int) (val []Pair, err error)

ZrangebyscoreWithScoresAndLimitCtx is the implementation of redis zrangebyscore command with scores and limit.

func (*Redis) ZrangebyscoreWithScoresByFloat

func (s *Redis) ZrangebyscoreWithScoresByFloat(key string, start, stop float64) ([]FloatPair, error)

ZrangebyscoreWithScoresByFloat is the implementation of redis zrangebyscore command with scores by float.

func (*Redis) ZrangebyscoreWithScoresByFloatAndLimit

func (s *Redis) ZrangebyscoreWithScoresByFloatAndLimit(key string, start, stop float64,
	page, size int) ([]FloatPair, error)

ZrangebyscoreWithScoresByFloatAndLimit is the implementation of redis zrangebyscore command with scores by float and limit.

func (*Redis) ZrangebyscoreWithScoresByFloatAndLimitCtx

func (s *Redis) ZrangebyscoreWithScoresByFloatAndLimitCtx(ctx context.Context, key string, start,
	stop float64, page, size int) (val []FloatPair, err error)

ZrangebyscoreWithScoresByFloatAndLimitCtx is the implementation of redis zrangebyscore command with scores by float and limit.

func (*Redis) ZrangebyscoreWithScoresByFloatCtx

func (s *Redis) ZrangebyscoreWithScoresByFloatCtx(ctx context.Context, key string, start, stop float64) (
	val []FloatPair, err error)

ZrangebyscoreWithScoresByFloatCtx is the implementation of redis zrangebyscore command with scores by float.

func (*Redis) ZrangebyscoreWithScoresCtx

func (s *Redis) ZrangebyscoreWithScoresCtx(ctx context.Context, key string, start, stop int64) (
	val []Pair, err error)

ZrangebyscoreWithScoresCtx is the implementation of redis zrangebyscore command with scores.

func (*Redis) Zrank

func (s *Redis) Zrank(key, field string) (int64, error)

Zrank is the implementation of redis zrank command.

func (*Redis) ZrankCtx

func (s *Redis) ZrankCtx(ctx context.Context, key, field string) (val int64, err error)

ZrankCtx is the implementation of redis zrank command.

func (*Redis) Zrem

func (s *Redis) Zrem(key string, values ...any) (int64, error)

Zrem is the implementation of redis zrem command.

func (*Redis) ZremCtx

func (s *Redis) ZremCtx(ctx context.Context, key string, values ...any) (val int64, err error)

ZremCtx is the implementation of redis zrem command.

func (*Redis) Zremrangebyrank

func (s *Redis) Zremrangebyrank(key string, start, stop int64) (int64, error)

Zremrangebyrank is the implementation of redis zremrangebyrank command.

func (*Redis) ZremrangebyrankCtx

func (s *Redis) ZremrangebyrankCtx(ctx context.Context, key string, start, stop int64) (
	val int64, err error)

ZremrangebyrankCtx is the implementation of redis zremrangebyrank command.

func (*Redis) Zremrangebyscore

func (s *Redis) Zremrangebyscore(key string, start, stop int64) (int64, error)

Zremrangebyscore is the implementation of redis zremrangebyscore command.

func (*Redis) ZremrangebyscoreCtx

func (s *Redis) ZremrangebyscoreCtx(ctx context.Context, key string, start, stop int64) (
	val int64, err error)

ZremrangebyscoreCtx is the implementation of redis zremrangebyscore command.

func (*Redis) Zrevrange

func (s *Redis) Zrevrange(key string, start, stop int64) ([]string, error)

Zrevrange is the implementation of redis zrevrange command.

func (*Redis) ZrevrangeCtx

func (s *Redis) ZrevrangeCtx(ctx context.Context, key string, start, stop int64) (
	val []string, err error)

ZrevrangeCtx is the implementation of redis zrevrange command.

func (*Redis) ZrevrangeWithScores

func (s *Redis) ZrevrangeWithScores(key string, start, stop int64) ([]Pair, error)

ZrevrangeWithScores is the implementation of redis zrevrange command with scores.

func (*Redis) ZrevrangeWithScoresByFloat

func (s *Redis) ZrevrangeWithScoresByFloat(key string, start, stop int64) ([]FloatPair, error)

ZrevrangeWithScoresByFloat is the implementation of redis zrevrange command with scores by float.

func (*Redis) ZrevrangeWithScoresByFloatCtx

func (s *Redis) ZrevrangeWithScoresByFloatCtx(ctx context.Context, key string, start, stop int64) (
	val []FloatPair, err error)

ZrevrangeWithScoresByFloatCtx is the implementation of redis zrevrange command with scores by float.

func (*Redis) ZrevrangeWithScoresCtx

func (s *Redis) ZrevrangeWithScoresCtx(ctx context.Context, key string, start, stop int64) (
	val []Pair, err error)

ZrevrangeWithScoresCtx is the implementation of redis zrevrange command with scores.

func (*Redis) ZrevrangebyscoreWithScores

func (s *Redis) ZrevrangebyscoreWithScores(key string, start, stop int64) ([]Pair, error)

ZrevrangebyscoreWithScores is the implementation of redis zrevrangebyscore command with scores.

func (*Redis) ZrevrangebyscoreWithScoresAndLimit

func (s *Redis) ZrevrangebyscoreWithScoresAndLimit(key string, start, stop int64,
	page, size int) ([]Pair, error)

ZrevrangebyscoreWithScoresAndLimit is the implementation of redis zrevrangebyscore command with scores and limit.

func (*Redis) ZrevrangebyscoreWithScoresAndLimitCtx

func (s *Redis) ZrevrangebyscoreWithScoresAndLimitCtx(ctx context.Context, key string,
	start, stop int64, page, size int) (val []Pair, err error)

ZrevrangebyscoreWithScoresAndLimitCtx is the implementation of redis zrevrangebyscore command with scores and limit.

func (*Redis) ZrevrangebyscoreWithScoresByFloat

func (s *Redis) ZrevrangebyscoreWithScoresByFloat(key string, start, stop float64) (
	[]FloatPair, error)

ZrevrangebyscoreWithScoresByFloat is the implementation of redis zrevrangebyscore command with scores by float.

func (*Redis) ZrevrangebyscoreWithScoresByFloatAndLimit

func (s *Redis) ZrevrangebyscoreWithScoresByFloatAndLimit(key string, start, stop float64,
	page, size int) ([]FloatPair, error)

ZrevrangebyscoreWithScoresByFloatAndLimit is the implementation of redis zrevrangebyscore command with scores by float and limit.

func (*Redis) ZrevrangebyscoreWithScoresByFloatAndLimitCtx

func (s *Redis) ZrevrangebyscoreWithScoresByFloatAndLimitCtx(ctx context.Context, key string,
	start, stop float64, page, size int) (val []FloatPair, err error)

ZrevrangebyscoreWithScoresByFloatAndLimitCtx is the implementation of redis zrevrangebyscore command with scores by float and limit.

func (*Redis) ZrevrangebyscoreWithScoresByFloatCtx

func (s *Redis) ZrevrangebyscoreWithScoresByFloatCtx(ctx context.Context, key string,
	start, stop float64) (val []FloatPair, err error)

ZrevrangebyscoreWithScoresByFloatCtx is the implementation of redis zrevrangebyscore command with scores by float.

func (*Redis) ZrevrangebyscoreWithScoresCtx

func (s *Redis) ZrevrangebyscoreWithScoresCtx(ctx context.Context, key string, start, stop int64) (
	val []Pair, err error)

ZrevrangebyscoreWithScoresCtx is the implementation of redis zrevrangebyscore command with scores.

func (*Redis) Zrevrank

func (s *Redis) Zrevrank(key, field string) (int64, error)

Zrevrank is the implementation of redis zrevrank command.

func (*Redis) ZrevrankCtx

func (s *Redis) ZrevrankCtx(ctx context.Context, key, field string) (val int64, err error)

ZrevrankCtx is the implementation of redis zrevrank command.

func (*Redis) Zscan

func (s *Redis) Zscan(key string, cursor uint64, match string, count int64) (
	keys []string, cur uint64, err error)

Zscan is the implementation of redis zscan command.

func (*Redis) ZscanCtx

func (s *Redis) ZscanCtx(ctx context.Context, key string, cursor uint64, match string, count int64) (
	keys []string, cur uint64, err error)

ZscanCtx is the implementation of redis zscan command.

func (*Redis) Zscore

func (s *Redis) Zscore(key string, value string) (int64, error)

Zscore is the implementation of redis zscore command.

func (*Redis) ZscoreByFloat

func (s *Redis) ZscoreByFloat(key, value string) (float64, error)

ZscoreByFloat is the implementation of redis zscore command score by float.

func (*Redis) ZscoreByFloatCtx

func (s *Redis) ZscoreByFloatCtx(ctx context.Context, key, value string) (val float64, err error)

ZscoreByFloatCtx is the implementation of redis zscore command score by float.

func (*Redis) ZscoreCtx

func (s *Redis) ZscoreCtx(ctx context.Context, key, value string) (val int64, err error)

ZscoreCtx is the implementation of redis zscore command.

func (*Redis) Zunionstore

func (s *Redis) Zunionstore(dest string, store *ZStore) (int64, error)

Zunionstore is the implementation of redis zunionstore command.

func (*Redis) ZunionstoreCtx

func (s *Redis) ZunionstoreCtx(ctx context.Context, dest string, store *ZStore) (
	val int64, err error)

ZunionstoreCtx is the implementation of redis zunionstore command.

type RedisConf

type RedisConf struct {
	Host string
	DB   int //default database is 0.
	// Maximum number of retries before giving up.
	// Default is 3 retries; -1 (not 0) disables retries.
	MaxRetries int
	// Minimum number of idle connections which is useful when establishing
	// new connection is slow. default 8
	MinIdleConns int
	Type         string `json:",default=node,options=node|cluster"`
	Pass         string `json:",optional"`
	Tls          bool   `json:",optional"`
	NonBlock     bool   `json:",default=true"`
	// PingTimeout is the timeout for ping redis.
	PingTimeout time.Duration `json:",default=1s"`
}

A RedisConf is a redis config.

func (RedisConf) NewRedis

func (rc RedisConf) NewRedis() *Redis

NewRedis returns a Redis. Deprecated: use MustNewRedis or NewRedis instead.

func (RedisConf) Validate

func (rc RedisConf) Validate() error

Validate validates the RedisConf.

type RedisKeyConf

type RedisKeyConf struct {
	RedisConf
	Key string
}

A RedisKeyConf is a redis config with key.

func (RedisKeyConf) Validate

func (rkc RedisKeyConf) Validate() error

Validate validates the RedisKeyConf.

type RedisLock

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

A RedisLock is a redis lock.

func NewRedisLock

func NewRedisLock(store *Redis, key string) *RedisLock

NewRedisLock returns a RedisLock.

func (*RedisLock) Acquire

func (rl *RedisLock) Acquire() (bool, error)

Acquire acquires the lock.

func (*RedisLock) AcquireCtx

func (rl *RedisLock) AcquireCtx(ctx context.Context) (bool, error)

AcquireCtx acquires the lock with the given ctx.

func (*RedisLock) Release

func (rl *RedisLock) Release() (bool, error)

Release releases the lock.

func (*RedisLock) ReleaseCtx

func (rl *RedisLock) ReleaseCtx(ctx context.Context) (bool, error)

ReleaseCtx releases the lock with the given ctx.

func (*RedisLock) SetExpire

func (rl *RedisLock) SetExpire(seconds int)

SetExpire sets the expiration.

type RedisNode

type RedisNode interface {
	red.Cmdable
}

RedisNode interface represents a redis node.

type Script

type Script = red.Script

Script is an alias of redis.Script.

func NewScript

func NewScript(script string) *Script

NewScript returns a new Script instance.

type ScriptCache

type ScriptCache struct {
	atomic.Value
}

A ScriptCache is a cache that stores a script with its sha key.

func GetScriptCache

func GetScriptCache() *ScriptCache

GetScriptCache returns a ScriptCache.

func (*ScriptCache) GetSha

func (sc *ScriptCache) GetSha(script string) (string, bool)

GetSha returns the sha string of given script.

func (*ScriptCache) SetSha

func (sc *ScriptCache) SetSha(script, sha string)

SetSha sets script with sha into the ScriptCache.

type StringCmd

type StringCmd = red.StringCmd

StringCmd is an alias of redis.StringCmd.

type Z

type Z = red.Z

Z represents sorted set member.

type ZStore

type ZStore = red.ZStore

ZStore is an alias of redis.ZStore.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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