Documentation ¶
Index ¶
- Constants
- Variables
- func RegisterNilError(err error)
- type BoolValuer
- type Cache
- type Common
- type EtcdConfig
- type FloatValuer
- type Hash
- type IntValuer
- type List
- type MapStringStringValuer
- type Memory
- func (m *Memory) Del(ctx context.Context, keys ...string) IntValuer
- func (m *Memory) Exists(ctx context.Context, keys ...string) IntValuer
- func (m *Memory) Expire(ctx context.Context, key string, ttl time.Duration) BoolValuer
- func (m *Memory) ExpireAt(ctx context.Context, key string, at time.Time) BoolValuer
- func (m *Memory) Get(ctx context.Context, key string) StringValuer
- func (m *Memory) HDel(ctx context.Context, key string, fields ...string) IntValuer
- func (m *Memory) HExists(ctx context.Context, key, field string) BoolValuer
- func (m *Memory) HGet(ctx context.Context, key string, field string) StringValuer
- func (m *Memory) HGetAll(ctx context.Context, key string) MapStringStringValuer
- func (m *Memory) HKeys(ctx context.Context, key string) StringSliceValuer
- func (m *Memory) HLen(ctx context.Context, key string) IntValuer
- func (m *Memory) HMGet(ctx context.Context, key string, fields ...string) SliceValuer
- func (m *Memory) HSet(ctx context.Context, key string, data ...interface{}) IntValuer
- func (m *Memory) HSetNX(ctx context.Context, key, field string, data interface{}) BoolValuer
- func (m *Memory) HVals(ctx context.Context, key string) StringSliceValuer
- func (m *Memory) LBPop(ctx context.Context, timeout time.Duration, keys ...string) StringSliceValuer
- func (m *Memory) LLen(ctx context.Context, key string) IntValuer
- func (m *Memory) LPop(ctx context.Context, key string) StringValuer
- func (m *Memory) LPush(ctx context.Context, key string, data ...interface{}) IntValuer
- func (m *Memory) LRang(ctx context.Context, key string, start, stop int64) StringSliceValuer
- func (m *Memory) LShift(ctx context.Context, key string) StringValuer
- func (m *Memory) LTrim(ctx context.Context, key string, start, stop int64) StatusValuer
- func (m *Memory) MGet(ctx context.Context, keys ...string) SliceValuer
- func (m *Memory) Persist(ctx context.Context, key string) BoolValuer
- func (m *Memory) Set(ctx context.Context, key string, data interface{}, expiration time.Duration) StatusValuer
- func (m *Memory) SetNX(ctx context.Context, key string, data interface{}, expiration time.Duration) BoolValuer
- func (m *Memory) ZAdd(ctx context.Context, key string, members ...Z) IntValuer
- func (m *Memory) ZCard(ctx context.Context, key string) IntValuer
- func (m *Memory) ZCount(ctx context.Context, key, min, max string) IntValuer
- func (m *Memory) ZIncrBy(ctx context.Context, key string, increment float64, member string) FloatValuer
- func (m *Memory) ZRange(ctx context.Context, key string, start, stop int64) StringSliceValuer
- func (m *Memory) ZRangeByScore(ctx context.Context, key string, opt *ZRangeBy) StringSliceValuer
- func (m *Memory) ZRank(ctx context.Context, key, member string) IntValuer
- func (m *Memory) ZRem(ctx context.Context, key string, members ...interface{}) IntValuer
- func (m *Memory) ZRemRangeByRank(ctx context.Context, key string, start, stop int64) IntValuer
- func (m *Memory) ZRemRangeByScore(ctx context.Context, key, min, max string) IntValuer
- func (m *Memory) ZRevRange(ctx context.Context, key string, start, stop int64) StringSliceValuer
- func (m *Memory) ZRevRank(ctx context.Context, key, member string) IntValuer
- func (m *Memory) ZScore(ctx context.Context, key, member string) FloatValuer
- type MemoryConfig
- type Redis
- func (r *Redis) Del(ctx context.Context, keys ...string) IntValuer
- func (r *Redis) Exists(ctx context.Context, keys ...string) IntValuer
- func (r *Redis) Expire(ctx context.Context, key string, ttl time.Duration) BoolValuer
- func (r *Redis) ExpireAt(ctx context.Context, key string, at time.Time) BoolValuer
- func (r *Redis) Get(ctx context.Context, key string) StringValuer
- func (r *Redis) HDel(ctx context.Context, key string, fields ...string) IntValuer
- func (r *Redis) HExists(ctx context.Context, key, field string) BoolValuer
- func (r *Redis) HGet(ctx context.Context, key string, field string) StringValuer
- func (r *Redis) HGetAll(ctx context.Context, key string) MapStringStringValuer
- func (r *Redis) HKeys(ctx context.Context, key string) StringSliceValuer
- func (r *Redis) HLen(ctx context.Context, key string) IntValuer
- func (r *Redis) HMGet(ctx context.Context, key string, fields ...string) SliceValuer
- func (r *Redis) HSet(ctx context.Context, key string, data ...interface{}) IntValuer
- func (r *Redis) HSetNX(ctx context.Context, key, field string, data interface{}) BoolValuer
- func (r *Redis) HVals(ctx context.Context, key string) StringSliceValuer
- func (r *Redis) LBPop(ctx context.Context, timeout time.Duration, keys ...string) StringSliceValuer
- func (r *Redis) LLen(ctx context.Context, key string) IntValuer
- func (r *Redis) LPop(ctx context.Context, key string) StringValuer
- func (r *Redis) LPush(ctx context.Context, key string, data ...interface{}) IntValuer
- func (r *Redis) LRang(ctx context.Context, key string, start, stop int64) StringSliceValuer
- func (r *Redis) LShift(ctx context.Context, key string) StringValuer
- func (r *Redis) LTrim(ctx context.Context, key string, start, stop int64) StatusValuer
- func (r *Redis) MGet(ctx context.Context, keys ...string) SliceValuer
- func (r *Redis) Persist(ctx context.Context, key string) BoolValuer
- func (r *Redis) Set(ctx context.Context, key string, data interface{}, ttl time.Duration) StatusValuer
- func (r *Redis) SetNX(ctx context.Context, key string, data interface{}, ttl time.Duration) BoolValuer
- func (r *Redis) ZAdd(ctx context.Context, key string, members ...Z) IntValuer
- func (r *Redis) ZCard(ctx context.Context, key string) IntValuer
- func (r *Redis) ZCount(ctx context.Context, key, min, max string) IntValuer
- func (r *Redis) ZIncrBy(ctx context.Context, key string, increment float64, member string) FloatValuer
- func (r *Redis) ZRange(ctx context.Context, key string, start, stop int64) StringSliceValuer
- func (r *Redis) ZRangeByScore(ctx context.Context, key string, opt *ZRangeBy) StringSliceValuer
- func (r *Redis) ZRank(ctx context.Context, key, member string) IntValuer
- func (r *Redis) ZRem(ctx context.Context, key string, members ...interface{}) IntValuer
- func (r *Redis) ZRemRangeByRank(ctx context.Context, key string, start, stop int64) IntValuer
- func (r *Redis) ZRemRangeByScore(ctx context.Context, key, min, max string) IntValuer
- func (r *Redis) ZRevRange(ctx context.Context, key string, start, stop int64) StringSliceValuer
- func (r *Redis) ZRevRank(ctx context.Context, key, member string) IntValuer
- func (r *Redis) ZScore(ctx context.Context, key, member string) FloatValuer
- type RedisConfig
- type RedisOptions
- type SZ
- type SliceValuer
- type SortedSet
- type StatusValuer
- type String
- type StringSliceValuer
- type StringValuer
- type Z
- type ZRangeBy
Constants ¶
const ( // KeepTTL 保持原有的存活时间 KeepTTL time.Duration = -1 // ValueMaxTTL 数值最多可存活时长 ValueMaxTTL = time.Hour * 6 )
*
@author : Jerbe - The porter from Earth @time : 2023/9/13 15:09 @describe :
Variables ¶
var MemoryNil = errors.New("memory cache: nil")
Functions ¶
Types ¶
type BoolValuer ¶
BoolValuer 布尔数值接口
type Cache ¶
Cache 缓存器
func NewMemoryWithConfig ¶ added in v2.1.4
func NewMemoryWithConfig(cfg MemoryConfig) (Cache, error)
NewMemoryWithConfig 实例化一个分布式的内存核心的缓存驱动
func NewRedis ¶
func NewRedis(opt *RedisOptions) Cache
type Common ¶
type Common interface { // Del 删除一个或多个key Del(ctx context.Context, keys ...string) IntValuer // Exists 判断某个Key是否存在 Exists(ctx context.Context, keys ...string) IntValuer // Expire 设置某个key的存活时间 Expire(ctx context.Context, key string, ttl time.Duration) BoolValuer // ExpireAt 设置某个key在指定时间内到期 ExpireAt(ctx context.Context, key string, at time.Time) BoolValuer // Persist 将某个Key设置成持久性 Persist(ctx context.Context, key string) BoolValuer }
Common 通用接口
type FloatValuer ¶ added in v2.1.0
FloatValuer 浮点型数值接口
type Hash ¶
type Hash interface { Common // HExists 判断field是否存在 HExists(ctx context.Context, key, field string) BoolValuer // HDel 哈希表删除指定字段(fields) HDel(ctx context.Context, key string, fields ...string) IntValuer // HSet 哈希表设置数据 HSet(ctx context.Context, key string, data ...interface{}) IntValuer // HSetNX 设置哈希表field对应的值,当field不存在时才能成功 HSetNX(ctx context.Context, key, field string, data interface{}) BoolValuer // HGet 哈希表获取一个数据 HGet(ctx context.Context, key string, field string) StringValuer // HMGet 哈希表获取多个数据 HMGet(ctx context.Context, key string, fields ...string) SliceValuer // HKeys 哈希表获取某个Key的所有字段(field) HKeys(ctx context.Context, key string) StringSliceValuer // HVals 哈希表获取所有值 HVals(ctx context.Context, key string) StringSliceValuer // HGetAll 获取哈希表的键跟值 HGetAll(ctx context.Context, key string) MapStringStringValuer // HLen 哈希表所有字段的数量 HLen(ctx context.Context, key string) IntValuer }
Hash 哈希表
func NewRedisHashDriver ¶
func NewRedisHashDriver(opt *RedisOptions) Hash
func NewRedisListDriver ¶
func NewRedisListDriver(opt *RedisOptions) Hash
type List ¶
type List interface { Common // LTrim 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。 //举个例子,执行命令 LTRIM list 0 2 ,表示只保留列表 list 的前三个元素,其余元素全部删除。 //下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。 //你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。 LTrim(ctx context.Context, key string, start, stop int64) StatusValuer // LPush 将数据推入到列表中 LPush(ctx context.Context, key string, data ...interface{}) IntValuer // LRang 提取列表范围内的数据 LRang(ctx context.Context, key string, start, stop int64) StringSliceValuer // LPop 推出列表尾的最后数据 LPop(ctx context.Context, key string) StringValuer // LBPop 移出并获取列表的最后一个元素, 如果列表没有元素会阻塞列表直到等待超时或发现可弹出元素为止 LBPop(ctx context.Context, timeout time.Duration, keys ...string) StringSliceValuer // LShift 推出列表头的第一个数据 LShift(ctx context.Context, key string) StringValuer // LLen 获取list列表的长度 LLen(ctx context.Context, key string) IntValuer }
List 列表
type MapStringStringValuer ¶
type MapStringStringValuer interface { Val() map[string]string Err() error Scan(dst interface{}) error Result() (map[string]string, error) }
MapStringStringValuer 以string为键string为值的map
type Memory ¶
type Memory struct {
// contains filtered or unexported fields
}
Memory 内存驱动
func (*Memory) HExists ¶
func (m *Memory) HExists(ctx context.Context, key, field string) BoolValuer
HExists 检测field是否存在哈希表中
func (*Memory) HGetAll ¶
func (m *Memory) HGetAll(ctx context.Context, key string) MapStringStringValuer
HGetAll 获取哈希表所有的数据,包括field跟value
func (*Memory) HKeys ¶
func (m *Memory) HKeys(ctx context.Context, key string) StringSliceValuer
HKeys 哈希表获取某个Key的所有字段(field)
func (*Memory) HSetNX ¶
func (m *Memory) HSetNX(ctx context.Context, key, field string, data interface{}) BoolValuer
HSetNX 如果哈希表的field不存在,则设置成功
func (*Memory) HVals ¶
func (m *Memory) HVals(ctx context.Context, key string) StringSliceValuer
HVals 哈希表获取所有值
func (*Memory) LBPop ¶ added in v2.1.3
func (m *Memory) LBPop(ctx context.Context, timeout time.Duration, keys ...string) StringSliceValuer
LBPop 推出列表尾的最后数据
func (*Memory) LPop ¶
func (m *Memory) LPop(ctx context.Context, key string) StringValuer
LPop 推出列表尾的最后数据
func (*Memory) LShift ¶
func (m *Memory) LShift(ctx context.Context, key string) StringValuer
LShift 推出列表头的第一个数据
func (*Memory) LTrim ¶
LTrim 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。 举个例子,执行命令 LTRIM list 0 2 ,表示只保留列表 list 的前三个元素,其余元素全部删除。 下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
func (*Memory) MGet ¶
func (m *Memory) MGet(ctx context.Context, keys ...string) SliceValuer
MGet 获取数据
func (*Memory) Persist ¶
func (m *Memory) Persist(ctx context.Context, key string) BoolValuer
Persist 删除key的过期时间,并设置成持久性 注意,持久化后最长也也不会超过 ValueMaxTTL
func (*Memory) Set ¶
func (m *Memory) Set(ctx context.Context, key string, data interface{}, expiration time.Duration) StatusValuer
Set 设置数据
func (*Memory) SetNX ¶
func (m *Memory) SetNX(ctx context.Context, key string, data interface{}, expiration time.Duration) BoolValuer
SetNX 设置数据,如果key不存在的话
func (*Memory) ZCount ¶ added in v2.1.2
ZCount 返回有序集 key 中, score 值在 min 和 max 之间(默认包括 score 值等于 min 或 max )的成员的数量。
func (*Memory) ZIncrBy ¶ added in v2.1.2
func (m *Memory) ZIncrBy(ctx context.Context, key string, increment float64, member string) FloatValuer
ZIncrBy 为有序集 key 的成员 member 的 score 值加上增量 increment 。 可以通过传递一个负数值 increment ,让 score 减去相应的值,比如 ZINCRBY key -5 member ,就是让 member 的 score 值减去 5 @return member 成员的新 score 值
func (*Memory) ZRange ¶ added in v2.1.2
ZRange 返回有序集 key 中,指定区间内的成员。 其中成员的位置按 score 值递增(从小到大)来排序。 具有相同 score 值的成员按字典序(lexicographical order )来排列。 如果你需要成员按 score 值递减(从大到小)来排列,请使用 ZREVRANGE 命令。 下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示有序集第一个成员,以 1 表示有序集第二个成员,以此类推。 你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推。
func (*Memory) ZRangeByScore ¶ added in v2.1.2
ZRangeByScore 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。有序集成员按 score 值递增(从小到大)次序排列。 具有相同 score 值的成员按字典序(lexicographical order)来排列(该属性是有序集提供的,不需要额外的计算)。 可选的 LIMIT 参数指定返回结果的数量及区间(就像SQL中的 SELECT LIMIT offset, count ),注意当 offset 很大时,定位 offset 的操作可能需要遍历整个有序集,此过程最坏复杂度为 O(N) 时间。
func (*Memory) ZRank ¶ added in v2.1.2
ZRank 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递增(从小到大)顺序排列。 排名以 0 为底,也就是说, score 值最小的成员排名为 0 。
func (*Memory) ZRem ¶ added in v2.1.2
ZRem 移除有序集 key 中的一个或多个成员,不存在的成员将被忽略。 @return 被成功移除的成员的数量,不包括被忽略的成员
func (*Memory) ZRemRangeByRank ¶ added in v2.1.2
ZRemRangeByRank 移除有序集 key 中,指定排名(rank)区间内的所有成员。 区间分别以下标参数 start 和 stop 指出,包含 start 和 stop 在内。 下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示有序集第一个成员,以 1 表示有序集第二个成员,以此类推。 你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推。
func (*Memory) ZRemRangeByScore ¶ added in v2.1.2
ZRemRangeByScore 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。 有序集成员按 score 值递增(从小到大)次序排列。
func (*Memory) ZRevRange ¶ added in v2.1.2
ZRevRange 返回有序集 key 中,指定区间内的成员。 其中成员的位置按 score 值递减(从大到小)来排列。 具有相同 score 值的成员按字典序的逆序(reverse lexicographical order)排列。
type MemoryConfig ¶ added in v2.1.4
type MemoryConfig struct { // Prefix 业务名前缀,如果用于隔离不同业务 Prefix string // Port 如果打算启用多个驱动,请分别设置多个不冲突的IP用于启动服务 Port int // Username 用户名 Username string // Password 密码 Password string // EtcdConfig 用于启用ETCD的服务 EtcdConfig EtcdConfig // Context 上下文 Context context.Context }
MemoryConfig 内存配置
type Redis ¶
type Redis struct {
// contains filtered or unexported fields
}
Redis 驱动器
func (*Redis) HExists ¶
func (r *Redis) HExists(ctx context.Context, key, field string) BoolValuer
HExists 判断哈希表的field是否存在
func (*Redis) HGetAll ¶
func (r *Redis) HGetAll(ctx context.Context, key string) MapStringStringValuer
HGetAll 哈希表获取所有值,包括field跟value
func (*Redis) HKeys ¶
func (r *Redis) HKeys(ctx context.Context, key string) StringSliceValuer
HKeys 哈希表获取某个Key的所有字段(field)
func (*Redis) HSetNX ¶
func (r *Redis) HSetNX(ctx context.Context, key, field string, data interface{}) BoolValuer
HSetNX 设置哈希表field对应的值,当field不存在时才能成功
func (*Redis) HVals ¶
func (r *Redis) HVals(ctx context.Context, key string) StringSliceValuer
HVals 哈希表获取所有值
func (*Redis) LPop ¶
func (r *Redis) LPop(ctx context.Context, key string) StringValuer
LPop 推出列表尾的最后数据
func (*Redis) LShift ¶
func (r *Redis) LShift(ctx context.Context, key string) StringValuer
LShift 推出列表头的第一个数据
func (*Redis) LTrim ¶
LTrim 对一个列表进行修剪(trim),就是说,让列表只保留指定区间内的元素,不在指定区间之内的元素都将被删除。 举个例子,执行命令 LTRIM list 0 2 ,表示只保留列表 list 的前三个元素,其余元素全部删除。 下标(index)参数 start 和 stop 都以 0 为底,也就是说,以 0 表示列表的第一个元素,以 1 表示列表的第二个元素,以此类推。 你也可以使用负数下标,以 -1 表示列表的最后一个元素, -2 表示列表的倒数第二个元素,以此类推。
func (*Redis) MGet ¶
func (r *Redis) MGet(ctx context.Context, keys ...string) SliceValuer
MGet 获取多个key的数据
func (*Redis) Persist ¶
func (r *Redis) Persist(ctx context.Context, key string) BoolValuer
Persist 移除某个key的TTL,设置成持久性
func (*Redis) Set ¶
func (r *Redis) Set(ctx context.Context, key string, data interface{}, ttl time.Duration) StatusValuer
Set 设置数据
func (*Redis) SetNX ¶
func (r *Redis) SetNX(ctx context.Context, key string, data interface{}, ttl time.Duration) BoolValuer
SetNX 如果key不存在才设置数据
func (*Redis) ZCount ¶ added in v2.1.2
ZCount 返回有序集 key 中, score 值在 min 和 max 之间(默认包括 score 值等于 min 或 max )的成员的数量。
func (*Redis) ZIncrBy ¶ added in v2.1.2
func (r *Redis) ZIncrBy(ctx context.Context, key string, increment float64, member string) FloatValuer
ZIncrBy 为有序集 key 的成员 member 的 score 值加上增量 increment 。 可以通过传递一个负数值 increment ,让 score 减去相应的值,比如 ZINCRBY key -5 member ,就是让 member 的 score 值减去 5 @return member 成员的新 score 值
func (*Redis) ZRange ¶ added in v2.1.2
ZRange 返回有序集 key 中,指定区间内的成员。 其中成员的位置按 score 值递增(从小到大)来排序。 具有相同 score 值的成员按字典序(lexicographical order )来排列。 如果你需要成员按 score 值递减(从大到小)来排列,请使用 ZREVRANGE 命令。 下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示有序集第一个成员,以 1 表示有序集第二个成员,以此类推。 你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推。
func (*Redis) ZRangeByScore ¶ added in v2.1.2
ZRangeByScore 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。有序集成员按 score 值递增(从小到大)次序排列。 具有相同 score 值的成员按字典序(lexicographical order)来排列(该属性是有序集提供的,不需要额外的计算)。 可选的 LIMIT 参数指定返回结果的数量及区间(就像SQL中的 SELECT LIMIT offset, count ),注意当 offset 很大时,定位 offset 的操作可能需要遍历整个有序集,此过程最坏复杂度为 O(N) 时间。
func (*Redis) ZRank ¶ added in v2.1.2
ZRank 返回有序集 key 中成员 member 的排名。其中有序集成员按 score 值递增(从小到大)顺序排列。 排名以 0 为底,也就是说, score 值最小的成员排名为 0 。
func (*Redis) ZRem ¶ added in v2.1.2
ZRem 移除有序集 key 中的一个或多个成员,不存在的成员将被忽略。 @return 被成功移除的成员的数量,不包括被忽略的成员
func (*Redis) ZRemRangeByRank ¶ added in v2.1.2
ZRemRangeByRank 移除有序集 key 中,指定排名(rank)区间内的所有成员。 区间分别以下标参数 start 和 stop 指出,包含 start 和 stop 在内。 下标参数 start 和 stop 都以 0 为底,也就是说,以 0 表示有序集第一个成员,以 1 表示有序集第二个成员,以此类推。 你也可以使用负数下标,以 -1 表示最后一个成员, -2 表示倒数第二个成员,以此类推。
func (*Redis) ZRemRangeByScore ¶ added in v2.1.2
ZRemRangeByScore 返回有序集 key 中,所有 score 值介于 min 和 max 之间(包括等于 min 或 max )的成员。 有序集成员按 score 值递增(从小到大)次序排列。
func (*Redis) ZRevRange ¶ added in v2.1.2
ZRevRange 返回有序集 key 中,指定区间内的成员。 其中成员的位置按 score 值递减(从大到小)来排列。 具有相同 score 值的成员按字典序的逆序(reverse lexicographical order)排列。
type RedisConfig ¶
type RedisOptions ¶
type RedisOptions struct { Config *RedisConfig Client redis.UniversalClient }
func NewRedisOptionsWithClient ¶
func NewRedisOptionsWithClient(cli redis.UniversalClient) *RedisOptions
func NewRedisOptionsWithConfig ¶
func NewRedisOptionsWithConfig(cfg *RedisConfig) *RedisOptions
type SliceValuer ¶
type SliceValuer interface { Val() []interface{} Err() error Scan(dst interface{}) error Result() ([]interface{}, error) }
SliceValuer 切片数值接口
type SortedSet ¶ added in v2.1.2
type SortedSet interface { Common ZAdd(ctx context.Context, key string, members ...Z) IntValuer ZCard(ctx context.Context, key string) IntValuer ZCount(ctx context.Context, key, min, max string) IntValuer ZIncrBy(ctx context.Context, key string, incr float64, member string) FloatValuer ZRange(ctx context.Context, key string, start, stop int64) StringSliceValuer ZRangeByScore(ctx context.Context, key string, opt *ZRangeBy) StringSliceValuer ZRank(ctx context.Context, key, member string) IntValuer ZRem(ctx context.Context, key string, members ...interface{}) IntValuer ZRemRangeByRank(ctx context.Context, key string, start, stop int64) IntValuer ZRemRangeByScore(ctx context.Context, key, min, max string) IntValuer ZRevRange(ctx context.Context, key string, start, stop int64) StringSliceValuer ZRevRank(ctx context.Context, key, member string) IntValuer ZScore(ctx context.Context, key, member string) FloatValuer }
SortedSet 排序集合
type StatusValuer ¶
StatusValuer 状态数值接口
type String ¶
type String interface { Common // Set 设置数据 Set(ctx context.Context, key string, data interface{}, ttl time.Duration) StatusValuer // SetNX 如果key不存在才设置数据 SetNX(ctx context.Context, key string, data interface{}, ttl time.Duration) BoolValuer // Get 获取数据 Get(ctx context.Context, key string) StringValuer // MGet 获取多个key的数据 MGet(ctx context.Context, keys ...string) SliceValuer }
String 字符串
func NewRedisString ¶
func NewRedisString(opt *RedisOptions) String
type StringSliceValuer ¶
type StringSliceValuer interface { Val() []string Err() error ScanSlice(container interface{}) error Result() ([]string, error) }
StringSliceValuer 字符串切片数值接口
type StringValuer ¶
type StringValuer interface { Val() string Err() error Scan(dst interface{}) error Bytes() ([]byte, error) Bool() (bool, error) Int() (int, error) Int64() (int64, error) Uint64() (uint64, error) Float32() (float32, error) Float64() (float64, error) Time() (time.Time, error) Result() (string, error) }
StringValuer 字符串数值接口