DNS Prefetch,即DNS预获取,是前端优化的一部分。一般来说,在前端优化中与 DNS 有关的有两点: 一个是减少DNS的请求次数,另一个就是进行DNS预获取 。

DNS 作为互联网的基础协议,其解析的速度似乎很容易被网站优化人员忽视。现在大多数新浏览器已经针对DNS解析进行了优化,典型的一次DNS解析需要耗费 20-120 毫秒,减少DNS解析时间和次数是个很好的优化方式。DNS Prefetching 是让具有此属性的域名不需要用户点击链接就在后台解析,而域名解析和内容载入是串行的网络操作,所以这个方式能 减少用户的等待时间,提升用户体验 。

默认情况下浏览器会对页面中和当前域名(正在浏览网页的域名)不在同一个域的域名进行预获取,并且缓存结果,这就是隐式的 DNS Prefetch。如果想对页面中没有出现的域进行预获取,那么就要使用显示的 DNS Prefetch 了。

目前大多数浏览器已经支持此属性,支持版本如下:

  • – Safari: 5+
  • – Chrome: All
  • – Firefox: 3.5+
  • – Opera: Unknown
  • – IE: 9+ (called “Pre-resolution” on blogs.msdn.com)

其中 Chrome 和 Firefox 3.5+ 内置了 DNS Prefetching 技术并对DNS预解析做了相应优化设置。所以 即使不设置此属性,Chrome 和 Firefox 3.5+ 也能自动在后台进行预解析 。

DNS Prefetch 应该尽量的放在网页的前面,推荐放在 <meta charset="UTF-8"> 后面。具体使用方法如下:

<meta http-equiv="x-dns-prefetch-control" content="on">
<link rel="dns-prefetch" href="//www.itechzero.com">
<link rel="dns-prefetch" href="//api.share.baidu.com">
<link rel="dns-prefetch" href="//bdimg.share.baidu.com">

需要注意的是,虽然使用 DNS Prefetch 能够加快页面的解析速度,但是也不能滥用,因为有开发者指出 禁用DNS 预读取能节省每月100亿的DNS查询 。

如果需要禁止隐式的 DNS Prefetch,可以使用以下的标签:

<meta http-equiv="x-dns-prefetch-control" content="off">

前端性能优化之--DNS预处理相关推荐

  1. 前端性能优化之-DNS优化

    什么是 Preload,Prefetch 和 Preconnect?文章链接 Preload:Preload 与 prefetch 不同的地方就是它专注于当前的页面,并以高优先级加载资源,Prefet ...

  2. 前端性能优化篇——DNS/CDN

    DNS解析 TCP/IP四层协议:应用层.传输层.网络层(网络互联层).链路层(网络接口层). DNS(Domain Name System,域名系统)和FTP(FIile Transfer Prot ...

  3. 前端性能优化:DNS 预解析

    DNS 预解析 DNS 解析也是需要时间的,可以通过预解析的方式来预先获得域名所对应的 IP <link rel="dns-prefetch" href="//bl ...

  4. 做前端性能优化,还不知道什么是Preload、Prefetch、Preconnect、Prerendering,你就out了?

    做前端性能优化,还不知道什么是Preload.Prefetch.Preconnect? 今天,我们将探讨当前的资源提示和指令,这是提高网站或 Web 应用程序性能的另一种好方法.您可能听说过Prelo ...

  5. Web前端性能优化,应该怎么做?

    本文将分享一些前端性能优化的常用手段,包括减少请求次数.减小资源大小.各种缓存.预处理和长连接机制,以及代码方面的性能优化等方面. base64:尤其是在移动端,小图标可以base64(webpack ...

  6. 前端性能优化总结(遇到好的,就得珍惜)

    前端性能优化(一) 前端是庞大的,包括 HTML. CSS. Javascript.Image .Flash等等各种各样的资源.前端优化是复杂的,针对方方面面的资源都有不同的方式.那么,前端优化的目的 ...

  7. 还是关于前端性能优化,真的是的从细节开始

    前端性能优化(一) 前端是庞大的,包括 HTML. CSS. Javascript.Image .Flash等等各种各样的资源.前端优化是复杂的,针对方方面面的资源都有不同的方式.那么,前端优化的目的 ...

  8. 1024节谈谈 “前端性能优化” 背刺面试官

    一. 前言 性能是前端面试的常考问题,也是系统的一个重要的指标,随着项目日渐庞大,都会涉及到优化的问题这也是为什么我想写这么一篇文章,在工作的过程中,我们也常常遇到这个问题. 假如某天你的老板突然问你 ...

  9. 深度讲解:web前端性能优化

    一.课程简介: 1.课程大纲 涉及到的分类 网络层面 构建层面 浏览器渲染层面 服务端层面 涉及到的功能点 资源的合并与压缩 图片编解码原理和类型选择 浏览器渲染机制 懒加载预加载 浏览器存储 缓存机 ...

最新文章

  1. 关于xshell连接虚拟机和虚拟机连网
  2. Windows2003 IIS6.0启用Gzip功能
  3. Maven:Generating Project in Batch mode 卡住问题
  4. log4j中配置日志文件相对路径方法
  5. python获取当前路径下所有文件
  6. 利用GAN实现QR Code超分辨率的研究
  7. android pdf重排软件,PDF拆分重排(paper for kindle)
  8. 招聘数下降71%!程序员:你的努力正在毁掉自己!
  9. 我发现我对人类活动的认识开始有一点点变化了
  10. Git首次提交代码到仓库步骤(资料)
  11. 关于协程及其锁的一些认识
  12. 卫星轨道的估计问题(Matlab)(一):理论基础
  13. C#窗体连连看小游戏(超详细)
  14. 如何写出干净整洁的代码
  15. 向量场的散度和旋度_矢量场散度和旋度的物理意义
  16. 三原色是红黄蓝对吗_三原色是哪几种颜色?是红黄蓝,还是红绿蓝
  17. 入侵检测系统,浅析几个著名的入侵检测系统
  18. Android WIFI密码查看器实例(在获取Root权限下查看系统文件)
  19. 腾讯会议怎么录屏?几个步骤轻松录屏
  20. 董卫凤:不服输的华丽转身(三)

热门文章

  1. Android RollBack机制实现原理剖析
  2. 集合框架详解之Set、Map接口与实现类
  3. windows 使用Nemo踩坑记录,no model named “nemo”
  4. 【直播预告】SDWAN+安全,如何帮助企业组建安全智能的自有网络
  5. (c语言)哈利·波特的考试 (25分)
  6. 智能安防是趋势 几大重点领域深入探讨
  7. 最强推荐:阿里P7级别面试经验总结,看看这篇文章吧!
  8. 阿里云服务器开放某个端口
  9. Linux——Linux驱动之设备树下platform总线驱动编写实战(手把手教你设备树下platform总线利用GPIO控制蜂鸣器完整实现过程)
  10. 创建非模态对话框时向非模态对话框传递参数方法