当前位置: 首页 > 面试题库 >

强缓存和协商缓存的区别, 各自的应用场景有哪些?

狄河
2023-03-14
本文向大家介绍强缓存和协商缓存的区别, 各自的应用场景有哪些?相关面试题,主要包含被问及强缓存和协商缓存的区别, 各自的应用场景有哪些?时的应答技巧和注意事项,需要的朋友参考一下

参考回答:

缓存分为两种:强缓存和协商缓存,根据响应的header内容来决定。

  获取资源形式 状态码 发送请求到服务器
强缓存 从缓存取 200(from cache) 否,直接从缓存取
协商缓存 从缓存取 304(not modified) 是,通过服务器来告知缓存是否可用

 

强缓存相关字段有expires,cache-control。如果cache-control与expires同时存在的话,cache-control的优先级高于expires。

协商缓存相关字段有Last-Modified/If-Modified-Since,Etag/If-None-Match

 

因为服务器上的资源不是一直固定不变的,大多数情况下它会更新,这个时候如果我们还访问本地缓存,那么对用户来说,那就相当于资源没有更新,用户看到的还是旧的资源;所以我们希望服务器上的资源更新了浏览器就请求新的资源,没有更新就使用本地的缓存,以最大程度的减少因网络请求而产生的资源浪费。

img

参考https://segmentfault.com/a/1190000008956069

 

 类似资料:
  • 1. 前言 缓存是性能提升的大杀器! 要知道,内存的读写速度是硬盘的几十倍到上百倍。缓存实际上就是利用内存的高速读写特性,提高热点数据的操作速度。 Spring Boot 中使用缓存非常简单,并且支持多种缓存实现。 本篇介绍比较常用的几种缓存实现方式,及其对应的应用场景。 2. Spring Boot 默认缓存 Spring Boot 默认缓存是基于 ConcurrenMapCacheManage

  • 有人能详细说明一下使用领域吗。确实需要两者都实现两者。?

  • 本文向大家介绍10分钟彻底搞懂Http的强制缓存和协商缓存(小结),包括了10分钟彻底搞懂Http的强制缓存和协商缓存(小结)的使用技巧和注意事项,需要的朋友参考一下 浏览器缓存 浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档。 所以根据上面的特点,浏览器缓存有下面的优点: 减少冗余的数据传输 减少服务器负担 加快客户端加

  • 本文向大家介绍jQuery和Zepto的区别?各自的使用场景?相关面试题,主要包含被问及jQuery和Zepto的区别?各自的使用场景?时的应答技巧和注意事项,需要的朋友参考一下 创建$的方式不同。前者略微要大,后者略微小点。 场景....emmmm

  • 本文向大家介绍TCP和UDP的区别和各自适用的场景相关面试题,主要包含被问及TCP和UDP的区别和各自适用的场景时的应答技巧和注意事项,需要的朋友参考一下 参考回答: 1)TCP和UDP区别 1) 连接 TCP是面向连接的传输层协议,即传输数据之前必须先建立好连接。 UDP无连接。 2) 服务对象 TCP是点对点的两点间服务,即一条TCP连接只能有两个端点; UDP支持一对一,一对多,多对一,多对

  • 本文向大家介绍Html5应用程序缓存和Html浏览器缓存有什么区别?相关面试题,主要包含被问及Html5应用程序缓存和Html浏览器缓存有什么区别?时的应答技巧和注意事项,需要的朋友参考一下 新的HTML5规范允许浏览器在连接客户端时预取一些或全部网站资产,如HTML文件、图像、CSS、JavaScript等。对于获取此内容,用户以前没有必要访问此内容。换句话说,应用程序缓存可以预取完全未被访问的