prefetch, preload, dns-prefetch,preconnect ,defer和async整理

dns-prefetch( DNS – Domain Name System,域名系统) DNS 预解析

<link rel="dns-prefetch" href="//cdn.staticfile.org" />

浏览器访问一个链接时,并不是直接将请求到网页对应的服务器上,而是先要访问域名服务器做域名解析,此时就会出现网路开销,一般要要几十毫秒到几百毫秒之间。

dns-prefetch指令可以在尚未访问 url 的时候提前做 dns 解析缓存(和其他页面加载并行执行),从而在真正请求 url 的时候避免对 dns 服务器的解析,达到加速网页加载的目的。

在 Chrome 中默认已经开启对静态资源的 dns 预解析,所有的a标签的href都会自动去启用DNS Prefetching,也就是说,网页的a标签href带的域名,是不需要在head里面加上link手动设置的,但是标签的默认启动在HTTPS不起作用,需要设置<meta http-equiv="x-dns-prefetch-control" content="on">开启.

preconnect

<link rel="preconnect" href="https://example.com">

MDN <link> 元素的 rel 属性的 preconnect 关键字是对浏览器的一种提示,即用户很可能需要来自目标来源的资源,因此浏览器很可能通过抢先启动与该源的连接来改善用户体验。通过抢先执行部分或全部握手(HTTP 为 DNS+TCP,HTTPS 为 DNS+TCP+TLS),预连接可加快未来从给定源加载的速度

Preload Prefetch
preload和prefecth是link标签上的属性,在常用用法里无法加载js,只能加载css,但是如果使用prefetch和preload,就可以加载js。preload或prefetch存储其实是在disk cache,也就是硬盘缓存。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值