如何在禁用集群模式的情况下配置Redis客户端使用读副本?

wydwbb8l  于 5个月前  发布在  Redis
关注(0)|答案(1)|浏览(70)

我正在使用node-redis和AWS Elasticache,禁用了集群模式。我有1个主节点和2个副本节点。
我的副本节点根本不提供读取服务。这可以在Elasticache的metrics选项卡中看到,并且非常清楚。
Redis文档中指出READONLY command can be used从副本节点开始阅读。在node-redis中唯一提到这个功能的是在他们的client configuration documentation中,使用readonly标志(默认为false)。这是用来打开新连接的。
我们的服务器 * 当前 * 维护一个Redis连接,并使用它来发出所有的读和写。(创建一个客户端)在每个命令之前,并根据我的命令是读还是写来设置这个readonly标志?我觉得我应该能够保持连接打开,并在每个命令的基础上指定readonly,以避免不断打开和关闭连接。
如果我只能在连接级别设置readonly,那么与Redis交互的最佳方式是什么?

j2datikz

j2datikz1#

readonly命令适用于Redis集群,而不是独立的Redis。所以它不能解决你的问题。
相反,您可以创建两个连接:一个用于写入(连接到主服务器),另一个用于读取(连接到副本服务器)。

相关问题