答案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 是否存在问题。除非您运行的全球服务对响应时间的要求非常严格,否则做更多的事情是没有用的。如果是这样,请在世界各地放置服务器,或者(最好)与专门从事这项工作的托管商签订合同。