什么是nginx的强缓存和协商缓存】的更多相关文章

网上关于WEB缓存的文章很多,今天汇总一下. 为什么要用缓存 一般针对静态资源如CSS,JS,图片等使用缓存,原因如下: 请求更快:通过将内容缓存在本地浏览器或距离最近的缓存服务器(如CDN),在不影响网站交互的前提下可以大大加快网站加载速度. 节省带宽:对于已缓存的文件,可以减少请求带宽甚至无需请求网络. 降低服务器压力:在大量用户并发请求的情况下,服务器的性能受到限制,此时将一些静态资源放置在网络的多个节点,可以起到均衡负载的作用,降低服务器的压力. 缓存分类 缓存分为服务端侧(server…
强缓存和协商缓存 在介绍缓存的时候,我们习惯将缓存分为强缓存和协商缓存两种.两者的主要区别是使用本地缓存的时候,是否需要向服务器验证本地缓存是否依旧有效. 顾名思义,协商缓存,就是需要和服务器进行协商,最终确定是否使用本地缓存. 两种缓存方案的问题点 强缓存 我们知道,强缓存主要是通过http请求头中的Cache-Control和Expire两个字段控制.Expire是HTTP1.0标准下的字段,在这里我们可以忽略.我们重点来讨论的Cache-Control这个字段. 一般,我们会设置Cache…
一.浏览器缓存 Web 缓存能够减少延迟与网络阻塞,进而减少显示某个资源所用的时间.借助 HTTP 缓存,Web 站点变得更具有响应性. (一).缓存优点: 减少不必要的数据传输,节省带宽 减少服务器负担,提升网站性能 加快客户端加载网页的速度,用户体验友好 (二).缓存缺点: 服务端资源更新后,客户端更新滞后 (三).浏览器缓存主要有两类: 强制缓存 协商缓存 (四).强缓存与协商缓存的区别 如图: (五).缓存机制原理: 浏览器第一次请求: 浏览器后续再进行请求时: 从上图可以知道浏览器在第…
http缓存策略以及强缓存和协商缓存浅析 本地缓存-强缓存 本地缓存,也就是我们常说的强缓存:是指当浏览器请求资源时,如果请求服务端的资源命中了浏览器本地的缓存资源,那么浏览器就不会发送真正请求给服务器. 此时的请求过程: 第一次请求 当浏览器还是第一次发送请求到后端的时候,本地还没有缓存资源,这个时候的服务器返回给浏览器的资源,响应码是200 当浏览器收到资源后,会将资源和对应的响应头一起缓存下来. 第二次请求 第二次浏览器准备发送请求给服务器时候,浏览器会先检查上一次服务端返回的响应头信息中…
Web 缓存能够减少延迟与网络阻塞,进而减少显示某个资源所用的时间.借助 HTTP 缓存,Web 站点变得更具有响应性. 缓存优点: 减少不必要的数据传输,节省带宽 减少服务器负担,提升网站性能 加快客户端加载网页的速度,用户体验友好 缓存缺点: 服务端资源更新后,客户端更新滞后 浏览器缓存主要有两类: 强制缓存 协商缓存 强制缓存 不会向服务器发送请求,直接从缓存中读取资源,请求返回状态码为 200 ; 强制缓存时,服务端会在 Response Headers 中的 cache-control…
什么是http缓存呢,当我们使用chrome浏览器,按F12打开控制台,在网络请求中有时候看到状态码是200,有时候状态码是304,当我们去看这种请求的时候,我们会发现状态码为304的状态结果是:Status Code: 304 Not Modified,而状态码为200的时候一般会有四种情况,一种是直接返回200,没有任何其他的标志,另一种是Status Code: 200 OK (from memory cache),还有一种是Status Code: 200 (from disk cach…
浏览器缓存 浏览器缓存是浏览器在本地磁盘对用户最近请求过的文档进行存储,当访问者再次访问同一页面时,浏览器就可以直接从本地磁盘加载文档. 所以根据上面的特点,浏览器缓存有下面的优点: 减少冗余的数据传输 减少服务器负担 加快客户端加载网页的速度 浏览器缓存是Web性能优化的重要方式.那么浏览器缓存的过程究竟是怎么样的呢? 在浏览器第一次发起请求时,本地无缓存,向web服务器发送请求,服务器起端响应请求,浏览器端缓存.过程如下: 在第一次请求时,服务器会将页面最后修改时间通过Last-Modifi…
目录 实操目录及步骤 缓存分类 强制缓存 对比缓存 指纹 Etag 摘要及加密算法 缓存总结 每个浏览器都有一个自己的缓存区,使用缓存区的数据有诸多好处,减少冗余的数据传输,节省网络传输.减少服务器负担, 提高网站的性能.加快客户端加载网页的速度等,而这里指的缓存,指代的静态文件的缓存,动态数据缓存需要走redis.今天我们使用node搭建服务,简单演示一下几种缓存的设置及配合使用. 缓存分为disk cache 和 memory cache两种,浏览器自行处理,代码层面无法控制.而我们一般在用…
强缓存与协商缓存的区别 强缓存:浏览器不与服务端协商直接取浏览器缓存 协商缓存:浏览器会先向服务器确认资源的有效性后才决定是从缓存中取资源还是重新获取资源 协商缓存运作原理 现在有一个这样的业务情景:后端的静态资源会不定时地发生更新,而因为浏览器默认使用强缓存,会默认从浏览器缓存中取到过时的资源. 现在我们希望浏览器每次获取资源的时候都向后端确认资源是否更新,就要设置浏览器使用协商缓存 那么后端如何判断资源是否更新了呢?这时就要用到Etag和Last-Modified两项响应头. 每次收到一个静…
之前一直对浏览器缓存只能描述一个大概,深层次的原理不能描述上来:终于在前端的两次面试过程中被问倒下,为了泄恨,查阅一些资料最终对其有了一个更深入的理解,废话不多说,赶紧来看看浏览器缓存的那些事吧,有不对的地方,请各位不吝赐教啊. 本文主要讲解浏览器端的缓存,缓存的作用是不言而喻的,能够极大的改善网页性能,提高用户体验. 1.浏览器缓存 缓存这东西,第一次必须获取到资源后,然后根据返回的信息来告诉如何缓存资源,可能采用的是强缓存,也可能告诉客户端浏览器是协商缓存,这都需要根据响应的header内容…