简体   繁体   English

多区域应用程序的 AWS 延迟改进

[英]AWS latency improvements for multi-region applications

We have clients from all over the world.我们有来自世界各地的客户。 So we are working to reduce latency.所以我们正在努力减少延迟。

Here is the schema that we currently use;这是我们当前使用的模式;

在此处输入图像描述

The problems are;问题是;

  • All ec2s are linked to their own local RDS.所有 ec2 都链接到自己的本地 RDS。 We do it due to reducing the latency.我们这样做是因为减少了延迟。 But it very costly.但这非常昂贵。 Can we get the same latency as local rds using inter-region vpc with global RDS?我们可以使用带全局 RDS 的区域间 vpc 获得与本地 rds 相同的延迟吗?

  • All regions have their own Application Load Balancers.所有区域都有自己的应用程序负载均衡器。 But it is too costly too.但这也太昂贵了。 Is there a way to reduce application load balancer cost?有没有办法降低应用程序负载均衡器的成本?

  • Is there a better approach that you suggest to reduce latency with lower cost and better performance?您是否建议以更低的成本和更好的性能来减少延迟?

Thank you very much.非常感谢。

Can we get the same latency as local rds using inter-region vpc with global RDS?我们可以使用带全局 RDS 的区域间 vpc 获得与本地 rds 相同的延迟吗?

Sadly, no.可悲的是没有。 When your RDS and EC2 are in same region, the connections between them must cross, in the worst case scenario, from one AZ to other AZ.当您的 RDS 和 EC2 位于同一区域时,它们之间的连接必须在最坏的情况下从一个 AZ 跨越到另一个 AZ。 For inter-region connections you are increasing distance greatly, so latency will increase.对于区域间连接,您会大大增加距离,因此延迟会增加。

Regarding cost.关于成本。 RDS is very expensive. RDS非常昂贵。 Maybe some of your applications don't need to use RDS?也许您的某些应用程序不需要使用 RDS? Self-managed db can be much cheaper run, but not easy to setup if you require advanced features such as fail-overs, read replicas, backups.自我管理的数据库运行起来会便宜得多,但如果您需要故障转移、只读副本、备份等高级功能,则设置起来并不容易。

Also, if in a region you have multiple RDS instances, maybe you can consolidate them, and have one bigger RDS instead of several smaller?此外,如果在一个区域中您有多个 RDS 实例,也许您可以合并它们,并拥有一个更大的 RDS 而不是几个更小的 RDS?

Is there a way to reduce application load balancer cost?有没有办法降低应用程序负载均衡器的成本?

If you have a typical setup of 1 ALB with 1 TG, then you can maybe reduce number of ALBs in a region by having 1 ALB for multiple TGs.如果您有 1 个 ALB 和 1 个 TG 的典型设置,那么您可以通过为多个 TG 设置 1 个 ALB 来减少一个区域中的 ALB 数量。

I don't exactly know what is the application, but you can have your infrastructure in one region and use an Edge-based API gateway in front of ALB to achieve lower latency across regions.我不完全知道应用程序是什么,但您可以将基础设施放在一个区域中,并在 ALB 前面使用基于 Edge 的 API 网关来实现跨区域的更低延迟。 The only downside is you might not have multi-region availability and only REST is supported, if it fits your need, you can experiment with this.唯一的缺点是您可能没有多区域可用性,并且仅支持 REST,如果它符合您的需要,您可以尝试一下。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM