【问题标题】:AWS latency improvements for multi-region applications多区域应用程序的 AWS 延迟改进
【发布时间】:2021-04-21 21:05:11
【问题描述】:
我们的客户来自世界各地。因此,我们正在努力减少延迟。
这是我们目前使用的架构;
问题是;
-
所有 ec2 都链接到自己的本地 RDS。我们这样做是因为减少了延迟。 但代价非常高。我们可以使用带全局 RDS 的跨区域 vpc 获得与本地 rds 相同的延迟吗?
-
所有区域都有自己的应用程序负载均衡器。但这也太昂贵了。有没有办法降低应用负载均衡器的成本?
-
您是否有更好的方法可以降低延迟,降低成本并提高性能?
非常感谢。
【问题讨论】:
标签:
amazon-web-services
amazon-ec2
aws-application-load-balancer
【解决方案1】:
我们能否使用带全局 RDS 的跨区域 vpc 获得与本地 rds 相同的延迟?
很遗憾,没有。当您的 RDS 和 EC2 位于同一区域时,它们之间的连接必须在最坏的情况下从一个 AZ 跨越到另一个 AZ。对于区域间连接,您会大大增加距离,因此延迟会增加。
关于费用。 RDS非常昂贵。也许您的某些应用程序不需要使用 RDS?自我管理的数据库运行起来会便宜得多,但如果您需要故障转移、只读副本、备份等高级功能,则设置起来并不容易。
另外,如果您在一个地区有多个 RDS 实例,也许您可以合并它们,并拥有一个更大的 RDS 而不是几个更小的?
有没有办法降低应用负载均衡器的成本?
如果您有 1 个 ALB 和 1 个 TG 的典型设置,那么您可以通过为多个 TG 设置 1 个 ALB 来减少一个区域中的 ALB 数量。
【解决方案2】:
我不确切知道应用程序是什么,但您可以将基础架构放在一个区域中,并在 ALB 前面使用基于 Edge 的 API 网关来实现跨区域的更低延迟。唯一的缺点是您可能没有多区域可用性,并且仅支持 REST,如果它符合您的需要,您可以尝试一下。