子域 (CNAME) 是否比使用原始地址慢?

bos*_*maj 5 performance cname-record cdn

我根本不是这方面的专家,所以我在徘徊在原始地址上使用某些子域(CNAME 记录)时是否存在速度差异等问题?

例如,当使用像 Amazon S3 这样的 CDN 时。有一个选项可以设置自定义域别名,并创建指向 Cloudfront 地址的 CNAME 记录。那么,使用指向 someString.cloudfront.net 的 sub.domain.com 时速度是否存在差异?

如果您打算更改 CDN 提供商,我了解 CNAME 的优势,并且您不需要更改链接,但我对速度感兴趣。

Tom*_*Tom 8

它显然更慢。您需要 2 个请求才能查看 IP 地址,而不是一个。

说:如果这是一个差异,你有一个问题 - 由于结果被缓存,我们谈论一次不到一秒钟的开销,如果开始使用适当的 DNS 服务。它更多 - 实际上 - 0.05 秒 ONE TIME 命中。


fak*_*ker 6

它可能会更慢,因为它可能需要 2 个 DNS 查询。

但在现实世界中用户的网页浏览器不会事先知道sub.domain.com是一个CNAME,它会询问AAAAA记录sub.domain.com
上游递归 DNS 将识别出答案是 aCNAME并进行查找(并缓存它)。
如果 的目标CNAME在同一个权威 DNS 服务器上,它也将A在答案中包含已解析。
因此,它也可以在不影响性能的单个查询中处理,但这取决于您使用的 DNS 设置。