前端性能优化-资源预加载

前端性能优化-资源预加载

预加载

预加载是浏览器对将来可能被使用资源的一种暗示,一些资源可以在当前页面使用到,一些可能在将来的某些页面中被使用。作为开发人员,我们比浏览器更加了解我们的应用,所以我们可以对我们的核心资源使用该技术。

预加载可以拆分成很多小点:dns-prefetch, subresource, prefetch, preconnect和 prerender

1.dns预解析 dns-prefetch

dns预解析通过指定具体的URL来告知客户端未来会用到相关的资源,这样浏览器可以尽早的解析DNS。

1
<link rel="dns-prefetch" href="//www.xxxx.com">

2.预连接 preconnect

预连接与 dns 预解析类似,Preconnect 不仅完成 DNS 预解析,同时还将进行 TCP 握手和建立传输层协议。

1
<link rel="preconnect" href="//www.xxxx.com">

3.预获取 prefetch

预获取指的是如果我们确定某个资源将来一定会被使用到,我们可以让浏览器预先请求该资源并放入浏览器缓存中。与 DNS 预解析不同,预获取真正请求并下载了资源,并储存在缓存中。

1
<link rel="prefetch" href="//www.xxxx.com/style.css">

4.优先级较高的预获取 subresource

1
<link rel="subresource" href="//www.xxxx.com/style.css">

5.预渲染 prerender

预渲染类似于在一个隐藏的 tab 页中打开了某个链接 – 将下载所有资源、创建 DOM 结构、完成页面布局、应用 CSS 样式和执行 JavaScript 脚本等。当用户真正访问该链接时,隐藏的页面就切换为可见,使页面看起来就是瞬间加载完成一样。

1
<link rel="prerender" href="//www.xxxx.com">

探测一个网页是否正在被prerender

1)打开Chrome Task Manager(Chrome浏览器右上角三个点工具栏—>工具—>任务管理器)

2)加载一个包含prerender的页面

3)在Chrome Task Manager中如果看到prerender打头的任务,说明你的页面正在被prerender。

科学上网点我http://jiasd.us/11667

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值