go操作redis,常用的库为redisgo和go-redis,在github上都有相关的demo code。

但是,相关的demo都不支持redis集群,开始尝试都是会报MOVED的错误,查资料说用MOVED报错后的地址再试一次即可,自己搞了半天发现重试也不行。

又继续查资料,发现go-redis是支持集群的。只要是合理的设置即可。

如下:

var ctx = context.Background()
//关键在于如下的配置
rdb := redis.NewClusterClient(&redis.ClusterOptions{
Addrs: []string{"xxx:xx"},
Password: "xx",
})

err := rdb.Set(ctx, "key", "value test", 0).Err()
if err != nil {
fmt.Println(err)
panic(err)
}

val, err := rdb.Get(ctx, "key").Result()
if err != nil {
panic(err)
}
fmt.Println("key", val)

val2, err := rdb.Get(ctx, "key2").Result()
if err == redis.Nil {
fmt.Println("key2 does not exist")
} else if err != nil {
panic(err)
} else {
fmt.Println("key2", val2)
}
测试可用哦。

相关文章:

  • 2021-06-14
  • 2021-10-18
  • 2021-09-30
  • 2021-08-23
  • 2021-11-21
  • 2021-12-28
  • 2022-12-23
猜你喜欢
  • 2021-12-26
  • 2021-12-29
  • 2021-11-23
  • 2021-11-29
相关资源
相似解决方案