首页 > 解决方案 > 我应该为每个 redis 操作创建一个新的 FailOverClient 吗?

问题描述

我正在尝试使用go-redis库中的NewFailOverClient连接到 K8s中的多个 Redis 服务器,这些服务器用作应用程序的缓存和分布式锁。我应该每次为操作(获取/设置)创建一个新客户端还是应该在整个应用程序中重用该客户端?

我觉得正常模式是在操作后关闭新连接,但是库建议客户端是线程安全的,这让我想知道除了重用客户端之外还有什么用例?

// NewFailoverClient returns a Redis client that uses Redis Sentinel
// for automatic failover. It's safe for concurrent use by multiple
// goroutines.
func NewFailoverClient(failoverOpt *FailoverOptions) *Client { ...

标签: goredisgo-redis

解决方案


推荐阅读