精华内容
下载资源
问答
  • 强缓存和弱缓存
    2019-02-22 12:27:39

    强缓存和弱缓存

    www.cnblogs.com/iceflorence…

    更多相关内容
  • 在http中,可通过控制http响应头,来控制http客户端的资源缓存,可分为强缓存和协商缓存 缓存: cache-control : max-age = 31536000 缓存通过响应头cache-control中max-age等指令进行控制 max-age可设置缓存...

    在http中,可通过控制http响应头,来控制http客户端的资源缓存,可分为强缓存和协商缓存

    强缓存:

    cache-control : max-age = 31536000

    强缓存通过响应头cache-control中max-age等指令进行控制

    max-age可设置强缓存时间周期,

    在该周期内,将直接从客户端缓存获取资源,而不会向服务器发送请求

    协商缓存:

    etag : W/" a6a8bc91475ad "

    协商缓存通过响应头etag与last-modified进行控制,

    它每次发送请求时,需要进行缓存新鲜度校验,如果资源过旧,将直接从响应中获取,否则从客户端缓存获取

    新鲜度校验,通过请求if-none-match与响应头etag进行对比,或者请求头if-modified-since与响应头last-modifed进行对比

    一般来说,我们对构建工具打包后,带有hash值的资源进行一年的强缓存,而对不带hash的资源进行协商缓存控制,注意协商缓存需要配置Cache-Control为max-age=0或者no-cache,否则一个没有设置Cache-Control的静态资源将会根据Date与Last-Modified计算出强缓存时间,可以根据谷歌中开发者工具中的网络面板查看其js/css等资源的响应头来确定是否配置了正确的资源缓存策略

    展开全文
  • 强缓存和弱缓存是什么

    千次阅读 2022-02-17 20:16:33
    缓存 缓存就是利用http协议...弱缓存也就是协商缓存,就是有服务器来确定缓存资源是否可用,所以客户端服务器端需要用某种标识来进行刷新一半都是协商缓存,只有在地址栏输入网址,活着通过链接引用资源的情况下
    强缓存

    强缓存就是利用http协议头的expres(时间字符串)和cache- control(相对时间)两个字段来控制的,看协议头上有没有用来表示资源的缓存时间;强缓存中,如果普通刷新会忽略他,不会清除他,需要强制刷新。带上cache- control:no-cache(不使用本地缓存),和pargma:no-cache;

    弱缓存

    弱缓存也就是协商缓存,就是有服务器来确定缓存资源是否可用,所以客户端和服务器端需要用某种标识来进行刷新一半都是协商缓存,只有在地址栏输入网址,活着通过链接引用资源的情况下,浏览器才会启用强缓存;

    展开全文
  • 这就涉及到了强缓存和弱缓存这两位兄弟喽 1.首先看看强缓存和弱缓存是怎么来的 **缓存: **在http协议请求头中设置Expires或者Cache-Control cache-control: max-age=3600 Expires是用来设置缓存过期时间,cache-...

    经常开发大哥改完bug,重新部署测试环境后,我这个菜鸟测试都会刷新下页面,但是发现有时候bug并没有修复,这个时候开发大哥就会让我清下缓存。那么问题就来了:刷新页面没有清缓存嘛?
    这就涉及到了强缓存和弱缓存这两位兄弟喽
    1.首先看看强缓存和弱缓存是怎么来的
    **强缓存:
    **在http协议请求头中设置Expires或者Cache-Control

    cache-control: max-age=3600
    

    Expires是用来设置缓存过期时间,cache-control的参数可以设置缓存的过期时间等。

    若浏览器发起请求的时候,缓存没有过期,则会直接读取本地缓存

    弱缓存:
    若未命中强缓存,则会向服务器发起请求:服务器判断页面有没有更新,若没有则会返回304,浏览器去读取本地缓存

    2.在读取缓存的时候状态码后面会跟(from memory cache)或者(from disk cache)
    (from memory cache):从内存中读取缓存
    (from disk cache):从硬盘中读取缓存

    至于缓存是存储在哪里这是由后端或者是在nginx等容器或者中间件服务中设置的
    3.回答我一开始的问题:刷新页面没有清缓存嘛?
    刷新页面是清除的强缓存,但是弱缓存并没有清除。

    展开全文
  • 浏览器缓存 浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档。 所以根据上面的特点,浏览器缓存有下面的优点: 减少冗余的数据...
  • 目录web缓存类型浏览器缓存规则:浏览器缓存的控制cache-control总结ExpiresLast-modified & If-modified-sinceEtag & & If-None-Match浏览器缓存流程为什么要有etag?哪些请求不能被缓存?用户操作行为...
  • cache 缓存与弱缓存区别

    千次阅读 2019-03-08 09:04:27
    Web缓存可以保存常见文档副本,当发起Web请求时,如果本地有 “已缓存的" 的副本,就可以直接从本地存储中提取这个文档,而不是去从原始服务器中拿。 减少冗余数据传输 当很多客户端访问原始服务器页面时...
  • HTTP缓存与协商缓存(弱缓存

    千次阅读 2019-09-04 15:19:21
    浏览器缓存的优点 浏览器将用户最近请求过的文档存储在本地磁盘,当用户再次访问时直接在本地加载,这样...首次响应时,服务器会把last-Modified(页面最后修改时间)Etag一起发送给客户端。 浏览器再次请求时: ...
  • 浏览器的缓存与弱缓存

    千次阅读 2018-06-11 16:37:15
    在浏览器众多缓存中的HTTP缓存可能很多人对这个的概念并没有很清晰,每个人都知道进入一次网页之后再刷新一次页面,加载速度会比首次加载快非常多,每个人都知道这是浏览器缓存的magic,但是对此背后的原因可能不甚...
  • 强缓存和协商缓存

    千次阅读 2020-08-30 10:17:48
    缓存分为两种:强缓存和协商缓存,根据响应的header内容来决定。 获取资源形式 状态码 发送请求到服务器 缓存 从缓存取 200(from cache...
  • 它使用LRU / LFU(LRFU)到期来保留引用的数据,然后,一旦数据处于非活动状态,它将使用引用(终结注册表)来允许GC作为正常GC周期的一部分删除缓存的数据,但仍然继续只要数据仍驻留在内存中并且尚未被收集,...
  • 今天讲一下 HTTP 缓存策略的强缓存和协商缓存。缓存是什么?缓存(Cache)是一种数据存储技术,广泛应用在电脑工程领域。它将原本访问起来较慢的数据,放到访问更快的存储介质中,当第二次访问时,能够更快地访问...
  • 一、什么是浏览器缓存? 浏览器将请求过的资源(html、js、css、img)等,根据缓存机制,拷贝一份副本存储在浏览器的内存或者磁盘上。如果下一次请求的url相同时则根据缓存机制决定是读取内存或者磁盘上的数据还是...
  • HTTP缓存——强制缓存和协商缓存

    千次阅读 2022-05-18 15:19:51
    缓存的原理:缓存的分类强制缓存Expires**expires的不足:**cache-Controlcache-control的属性协商缓存Last-ModifiedIf-Modified-Since**Last-Modified的不足**:ETagIf-None-Match**ETag的不足:**缓存决策树 ...
  • HTTP 的缓存机制,可以说这是前端工程师需要掌握的重要知识点之一。...HTTP 缓存分为 2 种,一种是强缓存,另一种是协商缓存。主要作用是可以加快资源获取速度,提升用户体验,减少网络传输,缓解服务端的压力。
  • 缓存相关字段: ... ... 缓存: 不发起http请求,直接使用本地缓存,比如浏览器地址栏回车,使用浏览器的刷新按钮...协商缓存(弱缓存): 在使用本地缓存前,先与服务器协商,核对缓存文件是否为最新。请求头携带If-None
  • 引用,软引用虚引用在缓存中的应用
  • 缓存的技术种类:代理缓存、浏览器缓存、网关缓存、负载均衡器及内容分发网络等,大致分为两类:共享缓存和私有缓存。 共享缓存指的是缓存内容可被多个用户使用,如公司内部架设的Web代理; 私有缓存指的是只能单独...
  • Glide 缓存机制解析(为啥使用引用)

    千次阅读 2020-06-30 10:16:34
    目前图片框架,基本就是 Glide 一统江山了,除了极其简单的链式调用,里面丰富的 API 也让人爱不释手。 那么,这样一个好用的框架,里面的缓存机制是怎么样的呢...其中内存缓存又包含 引用 LruCache ;而硬盘缓存
  • Caffeine 缓存 java集合缓存 以及 redis 缓存 关系 ​ 先比较前两着,比较显著的区别:1,Caffeine 缓存可以设定删除时间等删除条件、ConcurrentMap 代表的只JAVA集合类等只能动态添加保存,除非显示的删除(有...
  • 在加载图片时引用时尽量采用引用避免出现图片过多产生OOM.。 1、内存缓存,android为我们提供LruCache=其中维护着一个LinkedHashMap。LruCache可以用来存储各种类型的数据,我们设置它的大小,一般是系统最大存储...
  • mybatis的一级缓存和二级缓存

    千次阅读 2022-04-14 17:29:43
    mybatis默认开启一级缓存,一级缓存的作用域是SqlSession范围的,当在同一个sqlSession中执行两次相同的sql语句时,第一次执行完毕会将数据库中查询的数据写到缓存,第二次查询时会从缓存中获取数据,不再去底层...
  • HTTP强缓存和协商缓存 浏览器缓存 浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档。 所以根据上面的特点,浏览器缓存有下面的优点...
  • MyBatis一级缓存和二级缓存

    千次阅读 2022-04-03 20:36:19
    Mybatis缓存
  • 要想回答这个问题,必须把一级缓存和二级缓存的实现搞明白,详细介绍一下 我们知道Mybatis有一级缓存和二级缓存,底层都是用HashMap实现的 key为CacheKey对象(后续说原因),value为从数据库中查出来的值。 Mybatis...
  • 文章目录前端缓存缓存分类1、http缓存(1)缓存(本地缓存)启发式缓存(2)协商缓存(弱缓存)2、浏览器缓存其他响应头请求头参数刷新正常重新加载硬性重新加载清空缓存并硬性重新加载调试缓存 缓存分类 1、http...
  • MYSQL缓存:一级缓存和二级缓存

    千次阅读 2022-04-02 16:34:32
    MYSQL缓存:一级缓存和二级缓存
  • Mybatis本身提供了两个级别的缓存分别是一级缓存的二级缓存,两个缓存的实现原理都是相同的,不同的是两种缓存的作用域不同,一级缓存作用域是一个SqlSession的生命周期,SqLSession发生了flush或者close,缓存就会...
  • 威士忌节点具有引用应用程序缓存的 MongoDB 图形 ORM。 ##安装要在您的 Python 项目中使用:pip install -e git://github.com/texuf/whiskeynode.git#egg=whiskeynode要下载、设置执行测试,请在 Mac/Linux 上...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 101,956
精华内容 40,782
关键字:

强缓存和弱缓存