Dotcom-Monitor 的用户可以广泛控制如何为其监视任务执行 DNS 解析。 根据广泛的用户反馈,四个不同的 DNS 选项可用于监视任务。
设备缓存 (DEFAULT OPTION)表示在监视上一个任务(设备缓存)期间检索的缓存名称服务器 (NS) 地址最初将用于监视。 如果设备缓存没有所需的地址,则将从根 DNS 服务器对地址进行自动查询。 设置此选项后,Dotcom-Monitor 将解析设备检查每个实例的主机名一次。 因此,如果同一设备中的一个或多个任务中存在对同一主机名的引用,则 DNS 查找将发生一次,然后在签入该设备的持续时间内缓存。 大多数检查都相当快,在一分钟内执行,因此没有理由每隔几秒解析同一主机。 此选项的缺点是性能数据可能因同一设备中的任务而异。 如果在同一主机上的同一设备中监视两个 URL,则第一个 URL 将始终变慢,因为它将包括 DNS 查找时间,而第二个 URL 将使用缓存的 DNS IP 地址,DNS 解析将非常快。
非缓存意味着不会使用设备缓存(以前任务的缓存),因此每个新执行都需要对 DNS 根服务器进行单独的查询。
这对于确保统一时间非常有用,因为每次都会执行 DNS 查找。 但是,非缓存选项可以显著增加 DNS 服务器上的负载,并增加监视任务的响应时间。 此选项不适用于基于浏览器的 BrowserView 或 UserView 监视平台,因为在检查后的几秒钟内解析相同的主机名数百次是不切实际的。 例如,假设同一服务器上具有许多元素的网页都具有与根服务器不同的 DNS 分辨率。 在此类方案中,每次检查解决一次就足够了。
TTL 缓存意味着在监视之前的任务(设备缓存)期间形成的 NS 缓存最初将用于监视。 如果设备缓存没有所需的地址,则将从本地 DNS 服务器对地址进行自动查询。
此选项最好模拟真实用户体验。
外部 DNS 服务器意味着指定的 IP 地址将被视为 DNS 服务器地址,并轮询 NS 数据。
这在特定情况下非常有用,例如,如果您知道大多数客户使用公共缓存服务,例如 Google (8.8.8.8, 8.8.4.4) 或 Cloudfare (1.1.1.1)。 在这种情况下,您可以将 DNS 服务器设置为 Google 的 IP 之一。 只要指定的 Google DNS 提供有效的响应,Dotcom-Monitor 就不会检测到 DNS 错误,即使负责域的 DNS 服务器无法正常工作。
另一种情况是,如果您知道负责名称解析的服务器,并且不关心整个 DNS 链解析。 在这种情况下,您可以指定用于 DNS 解析的 DNS 服务器。 此选项还可以提供更好的 DNS 解析时间,因为 Dotcom-Monitor 不必从根服务器传播查找,并可以直接转到正确的 DNS 服务器。 但是,此选项可能无法检测到所有与 DNS 相关的问题。