`
shuaigg.babysky
  • 浏览: 571547 次
  • 性别: Icon_minigender_1
  • 来自: 济南
社区版块
存档分类
最新评论

终于明白缓存了

阅读更多

在浏览器上

前进,后退,点链接,还有在地址栏中输入了url地址按下回车

这几个操作,如果原先的页面有res1.setHeader("Cache-Control", "max-age=xxxx");

那么在xxxx秒之内是不会像服务器发送请求的,直接取得缓存里面的东西,如果是在xxxx秒之后的话,就是下面的情况了。

 

注意,如果是刷新页面的话,情况就会有不同,浏览器会去重新发送请求到服务器,而不管设置的max-age,请求端会向服务器传递一个If-Modified-Since属性,告诉浏览器,最后一次从服务器上真正把东西下载下来的时间,服务器接受到这个请求,首先得到的是请求的资源的最后修改时间,这个一般的web服务器自动处理了,像Apache,然后把这个时间和穿过来的时间进行比较,如果得到的最后修改时间比穿过来的时间晚的话,则把内容传输给浏览器,如果最后修改时间比穿过来的时间早或者相等,那么不同将实际内容传递给浏览器,而是传递一个304状态码,浏览器得到这个状态码之后,知道了服务器已经确认了这个文件没有发生过变化,然后就去缓存中取得原来从服务器上下载过来的资源。

 

其实就是这么点事。呵呵。

分享到:
评论

相关推荐

    缓存_缓存_

    首先,我们要明白缓存的基本思想:通过将常用数据或计算结果存储在快速访问的存储介质中,减少对慢速主存或远程资源的访问,从而提升系统响应速度。这种思想源自于计算机体系结构中的层次存储模型,从高速缓存(如...

    安卓三级缓存

    在深入理解这个概念之前,我们先要明白什么是缓存以及它的作用。缓存是一种快速存储,用于暂时存放频繁访问的数据,以便处理器能更快地获取这些数据,从而提高系统的整体性能。在多级缓存系统中,通常有L1、L2和L3三...

    chrome/Chromium缓存查看chromeCacheView

    首先,我们要明白什么是浏览器缓存。浏览器缓存是一种技术,用于存储用户访问过的网页的静态元素,如图像、样式表和脚本,以便在下次访问时快速加载。这种机制大大提高了网页的加载速度,减少了网络带宽的消耗。...

    缓存工具类

    首先,我们要明白缓存的基本原理。缓存是一种存储机制,用于临时存放经常访问的数据,以减少对主存储器(如SQLite数据库或网络)的访问,从而提高系统的响应速度。在Android中,常见的缓存形式有内存缓存和磁盘缓存...

    网络游戏-一种游戏服务器数据库缓存方法及系统.zip

    首先,我们要明白数据库缓存的基本原理。在网络游戏环境中,大量的玩家操作会产生频繁的数据库读写请求。直接与数据库进行交互会导致网络延迟,影响游戏的实时性。因此,引入缓存机制可以在服务器内存中存储常用或...

    行业分类-设备装置-多级缓存下固态硬盘的写方法及装置.zip

    首先,我们要明白什么是多级缓存。在计算机系统中,缓存是一种用于存储数据的小型、快速的存储器,它位于主存和处理器之间,目的是减少处理器访问慢速主存的延迟。多级缓存通常包括L1、L2和L3缓存,其中L1是最接近...

    如何保证缓存和数据库数据的一致性Java系列2021.pdf

    首先,我们需要明白,在缓存和数据库都参与读写操作的场景中,数据一致性问题的本质是由于读写分离和异步更新造成的。缓存是为了提高数据读取的速度和性能,而数据库则保证了数据的一致性和持久化。在分布式系统中,...

    浅谈Webpack 持久化缓存实践

    最近在看 webpack 如何做持久化缓存的内容,发现其中还是有一些坑点的,正好有时间就将它们整理总结一下,读完本文你大致能够明白: 什么是持久化缓存,为什么做持久化缓存? webpack 如何做持久化缓存? webpack ...

    浅析用iframe来调用页面会不会缓存页面

    首先,我们要明白HTTP状态码的作用。200状态码表示请求成功,服务器已经返回了请求的资源;而304状态码则意味着资源未被修改,浏览器可以直接使用本地缓存的版本,无需再次从服务器获取。这就引出了我们讨论的重点:...

    详解小程序设置缓存并且不覆盖原有数据

    首先,我们要明白微信小程序中的`wx.setStorage`方法是用来存储数据到本地缓存的。当使用`wx.setStorage`时,如果设置了相同的`key`,默认情况下,新设置的数据会覆盖旧的数据。但在我们的需求中,我们需要在原有的...

    nginx缓存及错误页面配置

    首先,我们需要明白浏览器缓存的基本概念。浏览器缓存是指浏览器在本地机器上存储静态文件,比如图片、样式表、JavaScript文件等,以便下次访问同一页面时,浏览器能够直接使用本地缓存的文件,从而加快页面加载速度...

    彩蛋篇:CDN 的缓存与回源机制解析(1).md

    前端开发者需要明白CDN对于提升网站性能的重要性,知道如何配置和使用CDN服务,以及如何在开发中充分地利用CDN来提高静态资源的传输效率。 通过学习CDN的原理和实践,前端工程师可以构建出一个性能更优的网站架构,...

    浅谈Ajax的缓存机制

    首先,要明白的是Ajax的缓存机制本质上与浏览器处理资源时采用的缓存机制是一致的。这包含几个核心的规则,这些规则影响浏览器在接收到相同的HTTP请求时是否使用缓存的数据: 1. 对于相同的URL发起的GET请求,...

    A high performance caching library for Java.zip

    首先,我们要明白缓存的基本原理:通过将常用数据存储在内存中,减少对硬盘或网络资源的访问,从而大大提高数据读取速度。在Java世界里,有多种成熟的缓存解决方案,如Google的Guava Cache、Ehcache、 caffeine等。...

    明明白白你的linux服务器

    ### 明明白白你的Linux服务器:关键知识点解析 #### 一、系统硬件信息的重要性 - **CPU使用情况**: 作为系统管理员,了解服务器CPU的工作负载至关重要。这有助于判断服务器是否处于过载状态,并据此采取相应的优化...

    Django使用redis缓存服务器的实现代码示例

    redis相信大家都很熟悉了,和memcached一样是一个高性能的key-value数据库,至于什么是缓存服务器,度娘都有很明白的介绍了,我在这里就不一一介绍了。 那我们一般什么情况下才会使用缓存服务器呢?可不是什么情况都...

    Cache-Simulator:编写以模拟多层缓存上执行的操作的C程序

    首先,我们要明白缓存的基本概念。缓存通常分为多个层次,如L1、L2和L3,每层的容量和速度不同,L1最接近CPU,速度最快但容量最小,而L3最大但速度最慢。缓存的工作机制基于“局部性原理”,即程序倾向于连续访问同...

    装机不用愁——明明白白选CPU.pdf

    AMD则有APU、Ryzen 3/5/7和Ryzen Threadripper系列,核心数量通常多于Intel,但性能并非完全由核心数量决定,还要考虑二级缓存、制造工艺、最大睿频和超频能力等因素。 CPU的频率是衡量性能的关键指标。主频是CPU...

    明明白白你的“芯”——浅谈CPU(上).pdf

    L1缓存(一级缓存)是CPU最接近的高速缓存,接着是L2(二级缓存)和L3(三级缓存),缓存容量越大,数据访问速度越快,对性能提升越显著。 除此之外,还有其他CPU特性,如核心数(多核技术允许CPU并行处理更多任务...

Global site tag (gtag.js) - Google Analytics