Redis 的 Go 客户端开发包 go-redis-client

MIT
Google Go
跨平台
2019-05-16
红薯

go-redis-client 是国内团队灵雀云开发的 Go 语言的 Redis 客户端开发包,支持 Redis 单机和集群。

特性

  • 自动键前缀
  • 创建客户端实例时使用独立的参数对象
  • 内部使用 github.com/go-redis/redis 客户端,当前使用的是 gopkg.in/redis.v5
  • 客户端接口

示例

package main

import "redis" github.com/alauda/go-redis-client

func main() {
  // check options.go for more details
  opts := redis.RedisClientOptions{
    Type: 	  redis.ClientNormal,
    Hosts:    []string{"localhost:6379"},
    Password: "123456",
    Database: 0,
  }
  client := redis.NewRedisClient(opts)
  if err := client.Ping().Err(); err != nil {
    panic(err)
  }
  
  // Using cluster mode
  clusterOpts := redis.RedisClientOptions{
    Type:      redis.ClientCluster,
    Hosts:     []string{"localhost:7000","localhost:7001","localhost:7002"},
    Password:  "123456",
    Database:  0,
    // all keys with a prefix
    KeyPrefix: "my-app:",
  }
  clusterClient := redis.NewRedisClient(clusterOpts)
  if err := clusterClient.Ping().Err(); err != nil {
    panic(err)
  }
}

Supported commands

  • Ping
  • Incr
  • IncrBy
  • Decr
  • DecrBy
  • Expire
  • ExpireAt
  • Persist
  • PExpire
  • PExpireAt
  • PTTL
  • TTL
  • Exists
  • Get
  • GetBit
  • GetRange
  • GetSet
  • MGet
  • Dump
  • HExists
  • HGet
  • HGetAll
  • HIncrBy
  • HIncrByFloat
  • HKeys
  • HLen
  • HMGet
  • HMSet
  • HSet
  • HSetNX
  • HVals
  • LIndex
  • LInsert
  • LInsertAfter
  • LInsertBefore
  • LLen
  • LPop
  • LPush
  • LPushX
  • LRange
  • lRem
  • LSet
  • LTrim
  • RPop
  • RPopLPush
  • RPush
  • RPushX
  • Set
  • Append
  • Del
  • Unlink
  • SAdd
  • SCard
  • SDiff
  • SDiffStore
  • SInter
  • SInterStore
  • SIsMember
  • SMembers
  • SMove
  • SPop
  • SPopN
  • SRandMember
  • SRem
  • SUnion
  • SUnionStore
  • ZAdd
  • ZAddNX
  • ZAddXX
  • ZAddCh
  • ZaddNXCh
  • ZIncr
  • ZIncrNX
  • ZIncrXX
  • ZCard
  • ZCount
  • ZIncrBy
  • ZInterStore
  • ZRange
  • ZRangeWithScores
  • ZRangeByScore
  • ZRangeByLex
  • ZRangeByScoreWithScores
  • ZRank
  • ZRem
  • ZREmRangeByRank
  • ZRemRangeByScore
  • ZRemRangeByLex
  • ZRevRange
  • ZRevRangeWithScores
  • ZRevRangeByScore
  • ZRevRangeByLex
  • ZRevRangeByScoreWithScores
  • ZRevRank
  • ZScore
  • ZUnionStore
  • BLPop
  • BRPop
  • BRPopLPush
  • Type
  • Scan
  • SScan
  • ZScan
  • HScan
  • Publish
  • Subscribe

TODO

  •  Update to redis.v6
  •  Support RedisCluster Subscribe
  •  Better support for godoc
  •  Add docker-compose and example application
  •  Add tests
的码云指数为
超过 的项目
加载中

评论(0)

暂无评论

暂无资讯

暂无问答

Redis使用pipeLine批量获取数据加快接口响应速度

一、背景 需求: redis通过tcp来对外提供服务,client通过socket连接发起请求,每个请求在命令发出后会阻塞等待redis服务器进行处理,处理完毕后将结果返回给client。 其实和一个http的服务器...

03/16 18:37
387
0
在Ubuntu Kylin14上安装Redis

在Ubuntu Kylin14上安装Redis

2016/04/15 14:24
36
1
Centos 编译安装配置redis

废话不说,直接上步骤: 1.进入redis官网 复制redis版本地址; 2.通过wget 加刚才复制地址; 3.解压 4.make 编译 5.个人将redis-server,redis.conf,redis-cli 复制到usr/local/redis文件夹中...

2018/04/21 11:33
16
0
redis集群搭建

redis 集群

2015/03/10 14:09
111
0
Redis配置详解-客户端缓冲区 output buffer

Redis配置详解-客户端缓冲区 http://blog.csdn.net/jiangguilong2000/article/details/38436941 Redis异常及使用总结 http://blog.csdn.net/jiangguilong2000/article/details/45025355 客户...

2015/08/21 10:32
2.2K
0
Redis Protocol specification

Redis Protocol specification Redis clients communicate with the Redis server using a protocol called RESP (REdis Serialization Protocol). While the protocol was designed specifi...

2015/06/05 21:42
29
0
Redis新特性——pipeline(管道)

采用redis-pipeline的方式从client端打包多条命令一起发出到redis-server,不需要等待单条命令的响应返回,缩短处理时间

2013/12/16 08:37
904
0

没有更多内容

加载失败,请刷新页面

返回顶部
顶部