在浏览器上
前进,后退,点链接,还有在地址栏中输入了url地址按下回车
这几个操作,如果原先的页面有res1.setHeader("Cache-Control", "max-age=xxxx");
那么在xxxx秒之内是不会像服务器发送请求的,直接取得缓存里面的东西,如果是在xxxx秒之后的话,就是下面的情况了。
注意,如果是刷新页面的话,情况就会有不同,浏览器会去重新发送请求到服务器,而不管设置的max-age,请求端会向服务器传递一个If-Modified-Since属性,告诉浏览器,最后一次从服务器上真正把东西下载下来的时间,服务器接受到这个请求,首先得到的是请求的资源的最后修改时间,这个一般的web服务器自动处理了,像Apache,然后把这个时间和穿过来的时间进行比较,如果得到的最后修改时间比穿过来的时间晚的话,则把内容传输给浏览器,如果最后修改时间比穿过来的时间早或者相等,那么不同将实际内容传递给浏览器,而是传递一个304状态码,浏览器得到这个状态码之后,知道了服务器已经确认了这个文件没有发生过变化,然后就去缓存中取得原来从服务器上下载过来的资源。
其实就是这么点事。呵呵。
分享到:
相关推荐
首先,我们要明白缓存的基本思想:通过将常用数据或计算结果存储在快速访问的存储介质中,减少对慢速主存或远程资源的访问,从而提升系统响应速度。这种思想源自于计算机体系结构中的层次存储模型,从高速缓存(如...
在深入理解这个概念之前,我们先要明白什么是缓存以及它的作用。缓存是一种快速存储,用于暂时存放频繁访问的数据,以便处理器能更快地获取这些数据,从而提高系统的整体性能。在多级缓存系统中,通常有L1、L2和L3三...
首先,我们要明白什么是浏览器缓存。浏览器缓存是一种技术,用于存储用户访问过的网页的静态元素,如图像、样式表和脚本,以便在下次访问时快速加载。这种机制大大提高了网页的加载速度,减少了网络带宽的消耗。...
首先,我们要明白缓存的基本原理。缓存是一种存储机制,用于临时存放经常访问的数据,以减少对主存储器(如SQLite数据库或网络)的访问,从而提高系统的响应速度。在Android中,常见的缓存形式有内存缓存和磁盘缓存...
首先,我们要明白数据库缓存的基本原理。在网络游戏环境中,大量的玩家操作会产生频繁的数据库读写请求。直接与数据库进行交互会导致网络延迟,影响游戏的实时性。因此,引入缓存机制可以在服务器内存中存储常用或...
首先,我们要明白什么是多级缓存。在计算机系统中,缓存是一种用于存储数据的小型、快速的存储器,它位于主存和处理器之间,目的是减少处理器访问慢速主存的延迟。多级缓存通常包括L1、L2和L3缓存,其中L1是最接近...
首先,我们需要明白,在缓存和数据库都参与读写操作的场景中,数据一致性问题的本质是由于读写分离和异步更新造成的。缓存是为了提高数据读取的速度和性能,而数据库则保证了数据的一致性和持久化。在分布式系统中,...
最近在看 webpack 如何做持久化缓存的内容,发现其中还是有一些坑点的,正好有时间就将它们整理总结一下,读完本文你大致能够明白: 什么是持久化缓存,为什么做持久化缓存? webpack 如何做持久化缓存? webpack ...
首先,我们要明白HTTP状态码的作用。200状态码表示请求成功,服务器已经返回了请求的资源;而304状态码则意味着资源未被修改,浏览器可以直接使用本地缓存的版本,无需再次从服务器获取。这就引出了我们讨论的重点:...
首先,我们要明白微信小程序中的`wx.setStorage`方法是用来存储数据到本地缓存的。当使用`wx.setStorage`时,如果设置了相同的`key`,默认情况下,新设置的数据会覆盖旧的数据。但在我们的需求中,我们需要在原有的...
首先,我们需要明白浏览器缓存的基本概念。浏览器缓存是指浏览器在本地机器上存储静态文件,比如图片、样式表、JavaScript文件等,以便下次访问同一页面时,浏览器能够直接使用本地缓存的文件,从而加快页面加载速度...
前端开发者需要明白CDN对于提升网站性能的重要性,知道如何配置和使用CDN服务,以及如何在开发中充分地利用CDN来提高静态资源的传输效率。 通过学习CDN的原理和实践,前端工程师可以构建出一个性能更优的网站架构,...
首先,要明白的是Ajax的缓存机制本质上与浏览器处理资源时采用的缓存机制是一致的。这包含几个核心的规则,这些规则影响浏览器在接收到相同的HTTP请求时是否使用缓存的数据: 1. 对于相同的URL发起的GET请求,...
首先,我们要明白缓存的基本原理:通过将常用数据存储在内存中,减少对硬盘或网络资源的访问,从而大大提高数据读取速度。在Java世界里,有多种成熟的缓存解决方案,如Google的Guava Cache、Ehcache、 caffeine等。...
### 明明白白你的Linux服务器:关键知识点解析 #### 一、系统硬件信息的重要性 - **CPU使用情况**: 作为系统管理员,了解服务器CPU的工作负载至关重要。这有助于判断服务器是否处于过载状态,并据此采取相应的优化...
redis相信大家都很熟悉了,和memcached一样是一个高性能的key-value数据库,至于什么是缓存服务器,度娘都有很明白的介绍了,我在这里就不一一介绍了。 那我们一般什么情况下才会使用缓存服务器呢?可不是什么情况都...
首先,我们要明白缓存的基本概念。缓存通常分为多个层次,如L1、L2和L3,每层的容量和速度不同,L1最接近CPU,速度最快但容量最小,而L3最大但速度最慢。缓存的工作机制基于“局部性原理”,即程序倾向于连续访问同...
AMD则有APU、Ryzen 3/5/7和Ryzen Threadripper系列,核心数量通常多于Intel,但性能并非完全由核心数量决定,还要考虑二级缓存、制造工艺、最大睿频和超频能力等因素。 CPU的频率是衡量性能的关键指标。主频是CPU...
L1缓存(一级缓存)是CPU最接近的高速缓存,接着是L2(二级缓存)和L3(三级缓存),缓存容量越大,数据访问速度越快,对性能提升越显著。 除此之外,还有其他CPU特性,如核心数(多核技术允许CPU并行处理更多任务...