使用包:https://github.com/go-redis/redis/tree/v3.2.29
使用方法:https://godoc.org/gopkg.in/redis.v3#pkg-examples
链接方法:redis.NewClient,里面有例子
这个包也满足集群的方式。
package lib
import (
"gopkg.in/redis.v3"
)
//no cluster
func NewRedisClient(host string, port string, password string) *redis.Client{
client := redis.NewClient(&redis.Options{
Addr: host + ":" + port,
Password: password, // no password set
DB: 0, // use default DB
})
return client
}
//cluster connection
func NewClusterRedisClient(redis_urls []string) *redis.ClusterClient{
client := redis.NewClusterClient(&redis.ClusterOptions{
Addrs: redis_urls,//[]string{"127.0.0.1:7000","127.0.0.1:7001","127.0.0.1:7002","127.0.0.1:7003"},
})
return client
}
type ConfigRedis struct {
Production map[string][]string
Development map[string][]string
Test map[string][]string
}
func GetClusterRedisUrls()(redis_urls []string) {
var config_redis ConfigRedis
redis_url_file_path,_ := filepath.Abs("config/redis_cluster.yml")
redis_url_content,_ := ioutil.ReadFile(redis_url_file_path)
yaml.Unmarshal(redis_url_content,&config_redis)
switch CurrentEnv{
case "dev":
redis_urls = config_redis.Development["urls"]//如果是单个就去第一个["urls"][0]
case "prod":
redis_urls = config_redis.Production["urls"]
default:
redis_urls = config_redis.Production["urls"]
}
return redis_urls
}
#使用方法文档都有。
ClusterRedis:= NewClusterRedisClient(GetClusterRedisUrls())
ip_fc:=ClusterRedis.HGetAll("fc:"+bl.Bidrequest.Udevice.Ip)
ip_fc_map := common.ToMap(ip_fc)
go语言搭建本地redis
猜你喜欢
转载自hhg08.iteye.com/blog/2284511
今日推荐
周排行