redis-cluster

一、连接redis-cluster

go-redis的连接池无需单独管理,在初始化时会自动根据cpu个数分配

package redis

import (
    "context"
    "sync"
    "github.com/go-redis/redis/v8"
)

var (
    redis_client    redis.UniversalClient
    onceRedis       sync.Once
)

func InitRedis(hosts []string, password string) {
    var err error
    onceRedis.Do(func(){
        redis_client = redis.NewClusterClient(
            &redis.ClusterOptions{
                Addrs:      hosts,
                Password:   password,
            }
        )
        _, err = client.Ping().Result()
    })
    if err != nil {
        panic(err)
    }
    fmt.Println("pool state final state:", client.PoolStats()) //获取客户端连接池相关信息
}

 

posted on 2021-11-22 13:59  myworldworld  阅读(67)  评论(0)    收藏  举报

导航