如何在禁用集群模式的情况下从Redis读取副本进行读取?

时间:2019-02-27 13:19:15

标签: amazon-web-services redis amazon-elasticache

我们当前有一个使用redis(AWS elasticache)的服务,该服务具有几个副本节点,并且禁用了集群模式。在这种情况下,我们如何实现只读副本并读写主节点?

golang中是否有相同的好的库?我可以找到几个库,但是它们都旨在启用集群模式。

1 个答案:

答案 0 :(得分:0)

我们要做的是使用route53创建指向“主要端点”的“写入” URL,如果出现问题,该URL将故障转移到当前的主要节点。这样,您就不必在应用程序中对其进行更新。然后,将所有节点轮流放置在“读取” URL下。

除非进行大量读取和不频繁写入,否则通常不需要访问读取(从副本)并在同一应用程序中写入。然后,您可以在代码中维护两个Redis客户端实例。不优雅,但有效。

如果使用加权轮循,则可以降低当前主数据库上的读数。只需知道何时发生故障转移事件即可对其进行更新。

将写入网址上的TTL设置为较低的值,例如1分钟或更短的时间。