Redis 通用客户端

提示

要了解如何使用 go-redis 客户端,请查看 入门 指南。

UniversalClient 是一个包装客户端,根据提供的选项,它表示 ClusterClientFailoverClient 或单个节点 Client。这在本地测试集群特定应用程序或在不同环境中使用不同的客户端时非常有用。

NewUniversalClient 返回一个新的多客户端。返回的客户端类型取决于以下条件

  1. 如果指定了 MasterName 选项,则返回一个由哨兵支持的 FailoverClient
  2. 如果 Addrs 的数量为两个或更多,则返回一个 ClusterClient
  3. 否则,返回一个单个节点 Client

例如

// rdb is *redis.Client.
rdb := NewUniversalClient(&redis.UniversalOptions{
    Addrs: []string{":6379"},
})

// rdb is *redis.ClusterClient.
rdb := NewUniversalClient(&redis.UniversalOptions{
    Addrs: []string{":6379", ":6380"},
})

// rdb is *redis.FailoverClient.
rdb := NewUniversalClient(&redis.UniversalOptions{
    Addrs: []string{":6379"},
    MasterName: "mymaster",
})