测试 DNS 缓存如何影响网站的新功能

Dotcom-Monitor 上的新 DNS 缓存功能允许您执行一些有趣的测试,显示 DNS 缓存如何影响页面加载速度。 我们意识到,许多组织监控其在线服务时考虑到了许多不同的目标,因此我们听取了我们收到的反馈,即一些用户希望在其监视中包含 DNS 响应时间,而一些用户希望能够从监视器中删除 DNS 响应。 您希望如何处理 DNS 响应时间以满足您的监控需求由您决定,但我们希望借此机会使用我们的新工具显示 DNS 响应时间如何影响网站负载的差异。 我们运行了一个测试监控 YouTube 从美国中西部的一个位置,具有三个不同的 DNS 缓存设置。 YouTube 首页上的基本 HTTP 全页加载产生了一些有趣,尽管结果并不令人惊讶。 请记住,结果将因许多变量而异,例如您监视的位置、一天中的时间、DNS 服务器上的负载以及网站服务器上的负载。

Dotcom-Monitor 上的新 DNS 缓存功能允许您执行一些有趣的测试,显示 DNS 缓存如何影响页面加载速度。YouTubeExamplesmall

我们意识到,许多组织监控其在线服务时考虑到了许多不同的目标,因此我们听取了我们收到的反馈,即一些用户希望在其监视中包含 DNS 响应时间,而一些用户希望能够从监视器中删除 DNS 响应。

您希望如何处理 DNS 响应时间以满足您的监控需求由您决定,但我们希望借此机会使用我们的新工具显示 DNS 响应时间如何影响网站负载的差异。

我们运行了一个测试监控 YouTube 从美国中西部的一个位置,具有三个不同的 DNS 缓存设置。 YouTube 首页上的基本 HTTP 全页加载产生了一些有趣,尽管结果并不令人惊讶。

请记住,结果将因许多变量而异,例如您监视的位置、一天中的时间、DNS 服务器上的负载以及网站服务器上的负载。

综合监控揭示 DNS 如何影响您的网站

在您的网站上执行持续的综合监视可以为您提供更好的基线,让您了解 DNS 如何影响您的网站。 新的 DNS 功能允许您更改监视代理处理 DNS 查找的方式。 无论您是在监视 httpsss 性能还是 VOIP 服务器,此 DNS 规范都可以应用于我们所有的监控解决方案。

代理能够使用多个源进行 DNS 查找,包括未缓存、缓存、ttl 缓存以及直接请求指定的 DNS 服务器。 未缓存意味着代理将在每个新任务之前清除其缓存,而缓存将在发送 DNS 查询之前检查代理本地缓存的记录。 如果尝试复制实际用户体验,则 ttl 缓存可能是随时间而使用的最佳选择,因为代理将保留记录缓存,直到记录自然超时(基于记录本身指定的生存时间)。 使用特定的 DNS 服务器允许您输入 DNS 服务器名称或 IP 地址,并监视请求如何从该服务器具体执行。

在同一时间段内,我们进行了三次测试,比较了 DNS 缓存的不同选项:非缓存、ttl 缓存以及使用 Google DNS 服务器作为我们的主要 DNS 服务器。

DNS 缓存已禁用

我们运行的第一个测试是禁用 DNS 缓存,因此监视服务器每次运行新任务时都会清除 DNS 缓存。

noncached dns

如上表所示,页面上所有元素的 DNS 分辨率约占页面加载时间的 15%。 公平地说,许多开发人员和 Web 操作专家可能会批评这些指标的有效性,因为现在使用的技术使我们能够优化页面加载性能,从而减轻页面上 DNS 查找的影响。 有多种方法可以帮助页面负载优化,例如最大限度地使用并行连接、使用异步脚本、启用压缩和许多其他页面加载优化技术。

使用 TTL 启用 DNS 缓存

好了,现在让我们看看启用 DNS 缓存时的外观。

cached dns

我们可以看到,当 DNS 缓存使用权威名称服务器设置的 TTL 集打开时,DNS 请求所占的页面加载时间不到 1%。 这似乎是一个很大的区别,但为了看看这如何影响页面负载,我们希望看看我们运行每个任务时监视工具生成的瀑布图。

non cached waterfall

看一看这两个图表,我们可以看到 DNS 缓存在整个加载时间上确实会产生超过 0.3 秒的差异,如果您遵循表示加载时间的 DNS 部分的橙色条似乎缩短了每个单个元素的加载时间。

cached waterfall

我们还可以通过查看瀑布图看到页面优化良好,以便大多数元素并行加载,并且不支撑其他单个元素。 总体而言,他们很好地限制了 DNS 加载时间对其页面上的影响。 因此,无论您认为您的网站是否针对最佳页面加载速度进行了优化,都很容易判断哪些区域正在减慢您的网站速度,以及您可以关注哪些领域进行改进。

自定义 DNS 服务器

只是为了好玩,让我们来看看如果我们使用DNS缓存功能,而不是指定8.8.8.8的谷歌DNS服务器作为我们的主要DNS服务器会发生什么。 我不知道谷歌是否有自己的网站Youtube已经缓存!

google dns

当我们直接进入 Google DNS 服务器时,加载时间需要 22%,但内容的实际加载时间要快得多,这也会增加总时间的百分比。 ms 中的实际时间是 185 毫秒通过 google vs 920 ms 通过默认 DNS 服务器。

google waterfall

这清楚地表明,用户越接近缓存的内容,页面加载速度存在显著差异。 即使缓存了 DNS 记录,我们也知道内容和 DNS 记录最终会超时,因此我们建议您将此测试带到下一个级别。

您可以设置连续监视,以便当站点出现问题时,您可以通过我们的警报系统立即收到反馈,并可以采取措施解决问题。 至少,您的网站加载速度将不断基线,包括内容分发网络 (CDN) 上从 DNS 到第三方内容或内容的所有内容。 然后,如果这些加载时间中的任何一个发生重大变化,您将有报告向下钻取并找出原因。

使用这些工具,如果特定地理区域出现问题,系统也会通知您。 在这种情况下,您可能会发现 DNS 主机存在间歇性问题,如果问题继续,您可能需要切换到在不同地理位置拥有更多服务器的更强大的提供程序。

网络监控 Web 性能工具 – 自行试用

我们仅使用 Dotcom-Monitor Web 性能工具套件的一个特定功能运行此测试。 这些工具的免费试用版是可用的,因此您可以测试自己的网站,并设置持续监控,以便在您的网站访问者注意到它们之前捕获网站减速和其他问题。

Facebook
Twitter
LinkedIn
电子邮件
打印