我想问一下选择DNS服务器对于服务器速度是否重要。
例如:我有一台小型办公室服务器连接到 ISP 互联网。我有一台调制解调器连接到服务器,因此 ISP 的公共 IP 和 DNS 服务器直接加载到服务器上。
如果客户端访问该网站,他设置的 DNS 将解析我的 IP,并且他将连接到我的服务器,该服务器将提供静态文件。
我的服务器是否需要查找 DNS 来将该静态文件传递给他?
我对 DNS 的理解是,它是某种类型的域名 IP 地址“库”。选择更快的 DNS 服务器可以解析客户端文件,从而加快加载速度。
但是,在我的服务器上设置最快的 DNS 是否可以使客户端更快地加载我的网站?
答案1
客户端在连接到服务器之前会对您的域名进行 DNS 查询。您的服务器无需进行 DNS 查询即可响应客户端请求。
如果您通过域名从服务器发出传出请求,则需要执行 DNS 请求。如果您调用微服务,以及对于 Windows 更新等标准操作,则可能会发生这种情况。
DNS 速度是网站性能的一个因素,但通常不是最重要的因素。您可以使用 Route53 / CloudFlare / 任何其他具有分布式 DNS 服务器的 DNS 提供商,这应该会为客户端提供 5 - 30ms 的 DNS 查找时间。这是缓存的,因此只会查找一次,但页面上的任何资源(字体、图形、分析等)都是其自己的 DNS 查询。如果 DNS 服务器速度慢,这可能会累积起来,但您通常无法控制依赖资源的 DNS。
如果您要提供静态网站,使用托管服务通常比运行自己的服务器要便宜得多。AWS S3 + CloudFront 每月可能只需花费您几美元,但由于 AWS 是一个复杂的企业环境,因此设置和配置可能需要花费大量时间。