前端杂谈 · Web

前端性能优化 减少DNS查询

•̀.̫•́✧ · 5月1日 · 2020年 · 本文384字 · 阅读1分钟135
前端性能优化 减少DNS查询-歪?是3.1415926吗

用户输入URL以后,浏览器首先要查询域名(hostname)对应服务器的IP地址,一般需要耗费20-120毫秒时间。DNS查询完成之前,浏览器无法从服务器下载任何数据。

基于性能考虑,ISP、局域网、操作系统、浏览器都会有相应的DNS缓存机制。

IE 缓存 30 分钟,可以通过注册表中 DnsCacheTimeout 项设置;
Firefox 缓存 1 分钟,通过 network.dnsCacheExpiration 配置;
Chrome 缓存 1 分钟,通过 chrome://net-internals/#dns 配置。

另外需要注意的是这里有一个矛盾,减少不同的域名可减少 DNS 查找,同时也减少了页面下载资源文件的并发量。也就是说,虽然避免 DNS 查找削减了响应时间,但是减少并行下载数量却增加了响应时间。原则是把组件分散在 2~4 个域名下,控制好数量,这是同时减少 DNS 查找和允许并发下载的折中方案。

0 条回应