16

我有一个EC2RDS在同一个地区US East(N. Virginia),但两种资源都在不同的地区;中的 RDSus-east-1a和中的 EC2 us-east-1b

现在的问题是,如果我将两种资源放在同一个资源中,zone那么它会加快与 DB 之间的数据传输速度吗?我每天收到大约 20k-30k 从应用到此实例的条目。

编辑

我在这里读到:

每个可用区都是隔离的,但一个区域中的可用区通过低延迟链路连接。

现在我想知道这些low-latency links是否非常小,或者我是否应该考虑将资源转移到同一区域以加快数据传输速度?

在此处输入图像描述

结论

如答案和评论中所述:

  • 由于我只有一个 and 实例,EC2因此RDSa 中的一项服务失败zone将影响整个系统。因此,将它们放在单独的区域中没有任何好处。
  • 即使zones连接在一起,low-latency links但仍然存在一些延迟,这在我的情况下是可以忽略的。
  • 在不同区域之间和不同区域之间还有0.01 美元/GB的小额数据传输费用。EC2RDS
4

3 回答 3

14

同一区域内跨区域数据传输的典型值是多少?

尽管 AWS 不会保证、声明或以其他方式承诺硬数字,但典型的测量值低于 10 毫秒,我所看到的数字约为 3 毫秒。

延迟如何影响数据传输吞吐量?

延迟越高,最大带宽越低。这里有许多因素需要考虑。Brad Hedlund写了一篇出色的论文。

我是否应该担心同一区域的区域之间的 AWS 网络延迟?

除非您使用具有非常高性能网络适配器(10 Gb 或更高)的最新实例,否则我不会担心。除了最特殊的情况外,容错的好处应该优先。

对于您的用例,数据库事务,1 ms 和 10 ms 之间的差异对您的事务性能的影响很小(如果有的话)。

但是,除非您在多个区域中使用多个 EC2 实例,否则您希望您的单个 EC2 实例与 RDS 位于同一区域中。如果您在两个区域中,则任何一个区域的故障都会导致您的配置下降。

有时延迟和网络带宽非常重要。对于这种特殊情况,AWS 提供了置放群组,以便 EC2 实例基本上位于同一个机架中,彼此靠近,从而将延迟降至最低。

于 2019-01-14T23:30:41.520 回答
7

将资源移动到同一个 AZ 会减少很少的延迟。请参阅此处了解一些非官方的基准。对于您每天 20k 读/写的用例,这不会有太大的不同。

但是,将资源移动到同一个 AZ 会显着提高您的案例的可靠性。如果您只有 1 个 DB 和 1 个 Compute Instance 相互依赖,那么没有理由将它们放在单独的可用区中。使用您当前的架构,其中一个失败us-east-1aus-east-1b将导致您的项目失败。除非您计划扩展您的项目以拥有多个数据库和计算实例,否则它们应该都驻留在同一个 AZ 中。

于 2019-01-14T23:21:30.217 回答
0

根据一些测试,我可以看到同一区域内的可用区之间的延迟大约为 600 微秒(0.6 毫秒)。一根光纤每公里有 5 微秒的延迟(延迟),而 azs 之间的距离小于 100 公里,因此结果匹配。

于 2021-07-27T16:01:47.997 回答