我在 AWS 上有一个 elasticache 实例(已禁用集群模式),有 1 个写入器和 5 个读取副本分布在不同的可用区。
我们正在对系统进行负载测试,我发现在负载测试时,每个读者的 CPU 利用率都不同。下面是所有节点的CPU利用率的截图
004是作者,其他是读者。
可以看到002占用了100%的CPU,而005和006只占用了CPU 即使所有 3 个都位于同一可用区,也约为 50%
所以我有以下问题-
Elasticache 根据其当前文档,最多支持 5 个副本节点。但是,仅向副本集群提供一个 DNS 端点,AWS 会将所有流量从该端点路由到单个节点。
除此之外,我们没有关于您如何连接到 Elasticache 集群的任何详细信息。如果您使用的 Redis 连接管理器不知道主节点和辅助节点主机名或不支持多个主机,那么您的应用程序将不会分发流量。总而言之,您可以在主节点和单个副本之间分配流量,但如果没有到其他节点的 DNS 映射,它们只是发生故障时的备份。