package spiderutil import ( "log" "time" "github.com/go-redis/redis" "golang.org/x/net/context" ) var ctx = context.Background() var RedisCluster *redis.ClusterClient func InitRedisCluster(addrs []string) { opts := &redis.ClusterOptions{ Addrs: addrs, DialTimeout: 120 * time.Second, ReadTimeout: 60 * time.Second, WriteTimeout: 60 * time.Second, } RedisCluster = redis.NewClusterClient(opts) } //set func RedisClusterSet(key string, val interface{}, timeout int) bool { result, err := RedisCluster.Set(ctx, key, val, time.Duration(timeout)*time.Second).Result() if err != nil || result != "OK" { log.Println("Redis Cluster Set Error:", result, err) return false } return true } //get func RedisClusterGet(key string) string { result, _ := RedisCluster.Get(ctx, key).Result() return result } //exists func RedisClusterExists(key string) bool { result, err := RedisCluster.Exists(ctx, key).Result() if result == 1 && err == nil { return true } if err != nil { log.Println("Redis Cluster Exists Error:", result, err) } return false } // func RedisClusterDelete(key string) { RedisCluster.Del(ctx, key) }