美文网首页
http缓存相关

http缓存相关

作者: 放风筝的小小马 | 来源:发表于2017-07-25 16:07 被阅读9次

    重点推荐 浏览器缓存知识小结及应用

    第一步:HTTP缓存实现的原理]

    第二步:浏览器 HTTP 协议缓存机制详解

    浏览器缓存机制:

    缓存有多种,有浏览器缓存,服务器缓存,CDN缓存等;浏览器缓存作为性能优化里面静态资源相关的一大利器;

    浏览器缓存基本知识

    浏览器缓存分为强缓存协商缓存

    1. 当要发送一个请求时,浏览器从请求的header中判断是否命中强缓存,如果命中,浏览器则从缓存中获取页面数据,不再往服务器发送请求了;强缓存命中主要是根据: Cache-ControlExpires来判断是否命中缓存;
    2. 如果没有命中强缓存,浏览器就发送请求到服务器验证是否命中协商缓存,浏览器会在request header中添加If-Modified-SinceIf-None-Match,并与服务器中的Last-ModifiedETag比较,如果缓存有效,则返回304请求,浏览器接收到请求后,就从缓存中获取数据;如果无效,则直接返回最新的页面数据,浏览器接收到后,更新到缓存中
    3. 强缓存与协商缓存的共同点是:如果命中,都是从客户端缓存中加载资源,而不是从服务器加载资源数据;区别是:强缓存不发请求到服务器,协商缓存会发请求到服务器。
    4. 当协商缓存没有命中,浏览器直接从服务器加载数据

    缓存管理

    协商缓存跟强缓存不一样,强缓存不发请求到服务器,所以有时候资源更新了浏览器还不知道,但是协商缓存会发请求到服务器,所以资源是否更新,服务器肯定知道。大部分web服务器都默认开启协商缓存,而且是同时启用【Last-Modified,If-Modified-Since】和【ETag、If-None-Match】,比如apache

    相关文章

      网友评论

          本文标题:http缓存相关

          本文链接:https://www.haomeiwen.com/subject/quawkxtx.html