Tro*_*ske 5 mysql database amazon-web-services amazon-rds amazon-aurora
我创建了一个运行 MySQL 的 Amazon Aurora 数据库集群,其中包含三个实例:支持集群的主实例和用于平衡的两个只读副本。但是,集群似乎根本没有平衡读取。我有一个副本管理 700 多个选择/秒,使 CPU 最大化为 99.75% 或更高,而另一个副本几乎没有做任何事情,CPU 使用率为 4%,每秒 1 个选择,如果那样的话。主集群实例本身的 CPU 使用率为 33%,因为它在应该被读取副本的同时被写入。副本之间的滞后时间低于 20 毫秒。我的应用程序正在查询集群的只读端点,但似乎没有发生平衡。有没有人了解为什么会发生这种情况或为什么副本的 CPU 使用率如此之高?对它运行的查询无论如何都不复杂。
我的猜测是您没有连接到集群端点。
\n\n负载平衡\xe2\x80\x93 连接到集群终端节点允许 Aurora 在数据库集群中的副本之间对连接进行负载平衡。这有助于分散读取工作负载,并可以带来更好的性能和更公平地使用每个副本可用的资源。在发生故障转移时,如果您连接的副本升级为主实例,则连接将被删除。然后,您可以重新连接到读取器端点,以便将读取查询发送到集群中的其他副本。
\n\nAmazon Aurora \xe2\x80\x93 负载平衡和更高可用性的新读取器终端节点
\n\n[编辑]
\n\n要在单个应用程序内进行负载平衡,您将需要重新连接到端点。如果您对所有查询使用相同的连接,则只有一个副本会响应。但是,打开连接的成本很高,因此这可能不会提供太多好处,除非您的查询需要一些时间来运行。
\n