go - 我应该为每个 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 { ...
解决方案
推荐阅读
- python-3.x - ImportError:无法使用 pytesseract 导入名称“image_to_data”
- c# - 如何使用 VS2017 查看长时间运行的 C# 异步操作的当前进度?
- c++ - 你如何在静态函数c ++中使用成员函数
- android - ibm watson 和谷歌云语音到文本 api 是否有可能结合?
- java - 构建失败的 android,弃用的功能
- vue.js - 捏放大vue js
- docker - 使用 docker-compose 构建开发和部署管道
- xamarin.forms - 如何在 Xamarin 中更改 MasterMainPage 的导航栏颜色
- r - 按时间顺序排序带时间戳的数据时出现不希望的输出
- regex - 选择“不匹配”的数据