DNS-PreFetch 技术及其他前端优化加载技术

初见 DNS-PreFetch

今天逛 Github 时文件树插件出现了问题,所以看了一下页面 HTML 源代码,突然发现了 <head> 里的东西

<head>
    <meta charset="utf-8">
  <link rel="dns-prefetch" href="https://github.githubassets.com">
  <link rel="dns-prefetch" href="https://avatars0.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars1.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars2.githubusercontent.com">
  <link rel="dns-prefetch" href="https://avatars3.githubusercontent.com">
  <link rel="dns-prefetch" href="https://github-cloud.s3.amazonaws.com">
  <link rel="dns-prefetch" href="https://user-images.githubusercontent.com/">


...
</head>

看名字是预获取 DNS 的,这里用于提前获取 DNS ,避免后面堵塞。
由于之前的经验,加之 DNS 在国内的糟糕环境,。所以我一下子就明白了它的重要性。


Ps. DNS(Domain Name System) 域名解析系统,分布式的。用来将网址解析成 ip 地址。因为路由三层设备只能通过IP寻址,所以必须把便于人类记忆的网址转换成人类记不住但机器能寻址的IP ---《计算机网络》学科知识


参考

DNS预解析dns-prefetch提升页面载入速度优化前端性能
深度解析之异步加载(defer、async、module)和预加载(preload、prefetch、dns-prefetch、preconnect 、prerender)

图源简书落叶卢生

浅谈script标签中的async和defer

[MDN 权威文档]

  1. https://developer.mozilla.org/zh-CN/docs/Controlling_DNS_prefetching
  2. https://developer.mozilla.org/en-US/docs/Web/Performance/dns-prefetch

前端优化推荐文章

  1. 现代浏览器性能优化-JS篇 -- 带你玩转prefetch, preload, dns-prefetch,defer和async
  2. 现代浏览器性能优化-CSS篇

开发者工具使用-Network-谷歌开发者文档

webpack+react+antd脚手架优化

posted @ 2020-07-04 11:20  蓝天上的云℡  阅读(230)  评论(0编辑  收藏  举报