与服务器距离的影响

与服务器距离的影响

我在爱尔兰有一台网络服务器(Amazon AWS)。这台服务器从德国(橙线)连接时速度很快,但从美国(黑线)连接时速度很慢。测试所用的 HTTP 请求相同。

在此处输入图片描述

我觉得这很正常。爱尔兰和美国的差距比德国和爱尔兰的差距大,但差距似乎太大了。

除了与服务器距离较远之外,还有其他可能的原因吗?

答案1

假设该图是 http 请求时间,对我来说这似乎相当合理。

一个 http 请求(在没有 keepalive、fastopen 等的情况下)通常需要至少两次往返。

  • 客户端发送 syn
  • 服务器收到 syn 并发送 syn-ack
  • 客户端收到syn-ack并发送ack和请求。
  • 服务器发送响应。

光纤中的光速约为每秒 2*10^8 米。根据谷歌的数据,“爱尔兰到美国”的距离为 6,629 公里*,这相当于往返时间约为 66 毫秒。

但这假设设备没有延迟,并且数据路由遵循最短的路径。欧洲主机和美国主机之间的实际往返时间通常为 100 到 150 毫秒。因此,http 请求时间约为 250 毫秒是完全正常的。

更令人担忧的是图表中的峰值,它们表明服务器和测试客户端之间的某处存在网络拥塞。

* 显然这取决于美国的哪个点和爱尔兰的哪个点,但谷歌选择的点似乎位于美国中部的某个地方,而 OP 的图表显示的是“us-mid”。

答案2

除了距离服务器较远之外,还有其他可能的原因吗?

数据包所采用的路径。

答案3

在谷歌上搜索ping "us-mid"Monitis.com 和他们在达拉斯的 IP,他们在法兰克福也有德国 IP。从法国一个连接良好的服务器,我到德国 IP 的 ping RTT 为 9 毫秒,到美国中部 IP 的 ping RTT 为 111 毫秒。对于 HTTP 响应时间,我预计是该时间的两倍加上服务器的反应时间,为了论证的目的,我们假设可能是 26 和 230。这与您的值没有太大差别,因为在爱尔兰,您可能离这两个地方的网络都稍远一些。

将这些值视为正常值,并监控与这些值的偏差,以查看您的网站或 ISP 是否存在问题。除非您运行的全球服务对响应时间的要求非常严格,否则做更多的事情是没有用的。如果是这样,请在世界各地放置服务器,或者(最好)与专门从事这项工作的托管商签订合同。

相关内容