浏览器缓存就是把一个已经请求过的资源拷贝一份存储起来,当下次需要该资源时,浏览器会根据缓存机制决定直接使用缓存资源还是再次向服务器发送请求。很多郑州Web前端学习入门小白好奇浏览器究竟是如何工作的?它的缓存机制是什么,接下来小编就给大家介绍一下。

浏览器缓存机制有四个方面,按照获取资源时请求的优先级依次排列为:Memory Cache、Service Worker Cache、HTTP Cache、Push Cache。

MemoryCache,是指存在内存中的缓存。从优先级上来说,它是浏览器最先尝试去命中的一种缓存。从效率上来说浏览器的缓存机制,它是响应速度最快的一种缓存。浏览器秉承的是“节约原则”Base64格式的图片永远可以被塞进memory cache,这可以视作浏览器为节省渲染开销的“自保行为”。体积不大的JS、CSS文件,也有较大地被写入内存的几率,但较大的JS、CSS文件就没有这个待遇了。

Service Worker是一种独立于主线程之外的Javascript 线程。它脱离于浏览器窗体,因此无法直接访问DOM。这样独立的个性使得 Service Worker 的“个人行为”无法干扰页面的性能,能够帮我们实现离线缓存、消息推送和网络代理等功能。

HTTP Cache,可分为强缓存和协商缓存。优先级较高的是强缓存,在命中强缓存失败的情况下,才会走协商缓存。对一条http get报文的基本缓存处理过程包括7个步骤:接收、解析、查询、新鲜度检测、创建响应、发送、日志。

Push Cache是指HTTP2在server push阶段存在的缓存,是缓存的最后一道防线。浏览器只有在Memory Cache、HTTP Cache和Service Worker Cache均未命中的情况下才会去询问Push Cache。Push Cache是一种存在于会话阶段的缓存,当session 终止时,缓存也随之释放。不同的页面只要共享了同一个HTTP2连接,那么它们就可以共享同一个Push Cache。

目前我们常说的浏览器缓存机制,其实主要就是HTTP协议定义的缓存机制。HTTP协议定义的缓存策略包括Expires策略、Cache-control策略、用户行为与缓存三部分。

如果你想了解更多郑州Web前端学习教程资料或者有哪些知识点不理解,可以关注“千锋郑州”微信公众号浏览器的缓存机制,定期发布技术热点和问题解答,助你更快更好的学习前端。

发表回复

后才能评论

本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。

最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。 若排除这种情况,可在对应资源底部留言,或联络我们。

对于会员专享、整站源码、程序插件、网站模板、网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。

如果您已经成功付款但是网站没有弹出成功提示,请联系站长提供付款信息为您处理

源码素材属于虚拟商品,具有可复制性,可传播性,一旦授予,不接受任何形式的退款、换货要求。请您在购买获取之前确认好 是您所需要的资源