DNS是域名系统,用于记录指向网站的IP地址。
DNS的每次查询都要消耗时间,大致上是20-120毫秒。
减少DNS的查询次数,实际操作上就是减少网页上内容所用到的域名。
而域名也不是越少越好,特别是网页上的内容很多的时候,需要下载的内容文件可能有几十个,上百个,那么都放在一个域名上的时候,展示该页面会很慢,慢的原因是浏览器同时能下载6个(Firefox的默认限制),每次6个,都要排着队的下载,下载完了,才显示网页,当然满了。
若使用两个域名,就可以同时下载12个,那么三个的话,就是18个。
反过来说,也不能太多,原因就是这里所说的,DNS查询的时间开销。
DNS查询的记录,可以缓存在历览器里,还可以缓存在操作系统内,更会缓存在ISP接入商的DNS服务器。
而在实际操作中,我的做法是,网站的html当然用主机域名,而CSS,js,以及其它的装饰性的图片,会大致上用两到四个CDN来分担。