浏览器缓存机制详细知识点梳理
在前端的性能优化中,浏览器缓存是很重要的一环。比如在页面前进或者后退,发现丝毫不卡顿很流畅,就是缓存机制的力量。
一、什么是缓存
浏览器缓存Brower Caching是浏览器对之前请求过的文件进行缓存,以便再次访问的时候提高页面展示的速度。比如当我们第一次访问CSDN网站的时候,PC会把从网站上的图片和数据下载到电脑上。当再次访问CSDN网站的时候,网站直接从PC加载,这就是缓存。
二、为什么需要缓存?缓存有哪些优势?
(1)浏览器缓存是将文件保存在客户端,减少重复请求浪费网络带宽,只产生很小的网络消耗。
ps:打开本地资源也会产生网络消耗
(2)缓解服务器的压力,不用重复请求数据
(3)提升前端性能,提高访问速度,提供更好的用户体验
三、web缓存的类别
①数据库缓存
将查询后的数据放在内存中进行缓存,下次再查询,直接从内存缓存中获取,提高响应速度
②CDN缓存
发送web请求,cdn计算出路径短且快的路。管理员部署,把经常访问的放入cnd加快响应
③代理服务器缓存
与浏览器缓存机制类似,但代理服务器面向更广大的群体,规模更大。不只是为一个用户服务,而是为一群用户服务。
④浏览器缓存
每个浏览器都实现HTTP缓存。浏览器使用HTTP协议与服务器交互,根据与服务器约定的规则进行缓存工作
四、浏览器缓存的位置
浏览器缓存的位置一般为四类:Server Worker、Memory Cache、Disk Cache、Push Cache
五、浏览器缓存过程
浏览器缓存过程:强缓存、协商缓存
六、浏览器缓存判断流程图
第一次请求
再次请求
七、缓存位置
1、Server Worker
Server Worker 是运行在浏览器的独立线程,一般用来缓存。Server Worker 涉及请求拦截,so传输协议是HTTPS来保障安全。
Server Worker 是“外建”的缓存机制