通过IP访问网站比域名访问速度更快吗?

通过IP访问网站比域名访问速度更快吗?

我目前收到大量流量(每天 100 多万次页面浏览)。我在 Digital Ocean 的负载均衡器后面设置了四台 16GB RAM 8 CPU nginx 服务器(这是他们添加的新功能)。当我通过 IP 直接访问每台服务器时,网站加载速度很快。但是,如果我访问域名,似乎会有 1-3 秒的延迟。这是负载均衡器无法正常工作吗?还是域名问题?请注意,我使用的是 Round Robin 和 Sticky Sessions。关于我的域名设置,我需要检查什么吗?

答案1

这里可能有很多因素在起作用。以下是使用负载均衡器的大致步骤

  1. 负载均衡器的 DNS 查找
  2. 连接到负载均衡器的时间。如果是 https,通常需要几次往返,因此延迟会起到一定作用
  3. 负载均衡器处理时间
  4. 负载均衡器 DNS 查找服务器的时间(可能已缓存)
  5. LB 打开与服务器的连接(可能重用现有的连接)
  6. LB 将请求传输到服务器
  7. LB 等待服务器处理请求
  8. LB 收到响应
  9. LB 将响应发送回客户端

以下是不使用负载均衡器的步骤

  1. 连接到服务器。如果是 https,通常需要几次往返,因此延迟会起到一定作用
  2. 将请求传输到服务器
  3. 等待服务器处理请求
  4. 接收响应

也就是说是 9 个步骤而不是 4 个步骤,这是一个显著的差异。

您可以使用以下方法比较两者网页测试,这将为您提供更多信息。进行测试,然后如果您需要帮助解释结果,请编辑您的帖子,然后在评论中标记您希望看到更新的任何人。

正如 Rowan 在下面指出的那样,延迟至少与带宽同样重要。数据中心的延迟非常低,几乎可以忽略不计,但每次往返服务器都需要时间。TLS 1.3 有助于解决此问题,使用将内容放在更靠近用户的位置的内容分发网络 (CDN) 在许多情况下也有帮助。

相关内容