ios哪个浏览器可以缓存 深入理解浏览器缓存
ios哪个浏览器可以缓存 深入理解浏览器缓存
2024-11-21 09:29:38  作者:她是个贱人  网址:https://m.xinb2b.cn/life/ozq445050.html

这是关于php进阶到架构之nginx进阶学习的第篇文章:深入理解浏览器缓存,我来为大家科普一下关于ios哪个浏览器可以缓存 深入理解浏览器缓存?以下内容希望对你有帮助!


ios哪个浏览器可以缓存 深入理解浏览器缓存

目录概述浏览器缓存的作用缓存读取的原理协商缓存强制缓存协商缓存与强制缓存区别小结php7进阶到架构师相关阅读概述

这是关于php进阶到架构之nginx进阶学习的第篇文章:深入理解浏览器缓存

第一篇:5分钟搞懂nginx的location匹配规则第二篇:nginx rewrite规则详解第三篇:5分钟上手nginx分流实战第四篇:Nginx跨域配置第五篇:深入理解浏览器缓存浏览器缓存的作用缓存可以减少数据传输。节省了网络带宽,从而更快的加载页面。缓存降低了服务器的要求,从而服务器更快的响应。

那么我们使用浏览器缓存,浏览器缓存的资源文件到什么地方去了呢?

那么首先来看下浏览器memory cache 和 disk cache缓存

memory cache:

它是将资源文件缓存到客户端(你的电脑或手机)内存中。等下次请求访问的时候不需要重新下载资源,而是直接从内存中读取数据。

disk cache:

它是将资源文件缓存到硬盘(你的电脑或手机磁盘)中。等下次请求的时候它是直接从硬盘中读取。

那么memory cache与disk cache的区别是什么?

memory cache(内存缓存):

退出进程时(如关闭浏览器)数据会被清除

disk cache(硬盘缓存):

退出进程时(如关闭浏览器)数据不会被清除

内存读取比硬盘中读取的速度更快。

但是我们也不能把所有数据放在内存中缓存的,

因为内存也是有限的。

缓存读取的原理

先从内存中查找对应的缓存,

如果内存中能找到就读取对应的缓存,

否则的话就从硬盘中查找对应的缓存,

如果有就读取,

否则的话,就重新网络请求。

那么浏览器缓存它又分为2种:协商缓存和强制缓存。

协商缓存

客户端向服务器端发出请求,服务端会检测是否有对应的标识,

如果没有对应的标识,服务器端会返回一个对应的标识给客户端,

客户端下次再次请求的时候,把该标识带过去,

然后服务器端会验证该标识,

如果验证通过了,则会响应304,告诉浏览器读取缓存。

如果标识没有通过,则返回请求的资源。

协商缓存的标识又有2种:ETag/if-None-Match 和 Last-Modified/if-Modify-Since

协商缓存Last-Modified/if-Modify-Since

浏览器第一次发出请求一个资源的时候,服务器会返回一个last-Modify到hearer中.

Last-Modify 含义是最后的修改时间。

当浏览器再次请求的时候,request的请求头会加上 if-Modify-Since,该值为缓存之前返回的 Last-Modify.

服务器收到if-Modify-Since后,根据资源的最后修改时间(last-Modify)和该值(if-Modify-Since)进行比较,

如果相等的话,则命中缓存,返回304,

否则, 如果 Last-Modify > if-Modify-Since,

则会给出200响应,并且更新Last-Modify为新的值。

协商缓存ETag/if-None-Match

ETag的原理和上面的last-modified是类似的。

ETag则是对当前请求的资源做一个唯一的标识。

该标识可以是一个字符串,文件的size,hash等。

只要能够合理标识资源的唯一性并能验证是否修改过就可以了。

ETag在服务器响应请求的时候,返回当前资源的唯一标识(它是由服务器生成的)。

但是只要资源有变化,ETag会重新生成的。

浏览器再下一次加载的时候会向服务器发送请求,会将上一次返回的ETag值放到request header 里的 if-None-Match里面去,服务器端只要比较客户端传来的if-None-Match值是否和自己服务器上的ETag是否一致,

如果一致说明资源未修改过,因此返回304,

如果不一致,说明修改过,因此返回200。

并且把新的Etag赋值给if-None-Match来更新该值。

last-modified 和 ETag之间对比

1. 在精度上,ETag要优先于 last-modified。

2. 在性能上,Etag要逊于Last-Modified。Last-Modified需要记录时间,而Etag需要服务器通过算法来计算出一个hash值。

3. 在优先级上,服务器校验优先考虑Etag。

强制缓存

浏览器在加载资源的时候,会先根据本地缓存资源的header中的信息(Expires 和 Cache-Control)来判断是否需要强制缓存。如果命中的话,则会直接使用缓存中的资源。否则的话,会继续向服务器发送请求。

Expires

Expires 是http1.0的规范,它的值是一个绝对时间的GMT格式的时间字符串。这个时间代表的该资源的失效时间,如果在该时间之前请求的话,则都是从缓存里面读取的。但是使用该规范时,可能会有一个缺点就是当服务器的时间和客户端的时间不一样的情况下,会导致缓存失效。

Cache-Control

是http1.1的规范,它是利用该字段max-age值进行判断的。该值是一个相对时间,比如**Cache-Control: max-age=3600,**代表该资源的有效期是3600秒。

no-cache:

需要进行协商缓存,发送请求到服务器确认是否使用缓存。

no-store:禁止使用缓存,每一次都要重新请求数据。

public:可以被所有的用户缓存,包括终端用户和 CDN 等中间代理服务器。

private:只能被终端用户的浏览器缓存,不允许 CDN 等中继缓存服务器对其缓存。

Cache-Control 与 Expires 可以在服务端配置同时启用,同时启用的时候 Cache-Control 优先级高。

协商缓存与强制缓存区别小结

协商缓存本质是通过服务器端的304实现,每次访问都需要请求服务器,然后服务器返回304,从而读取浏览器本地(内存或文件)缓存

强制缓存是通过Cache-Control和expire实现,第一次需要请求服务器,然后在服务器失效之前****无需请求服务器,直接读取浏览器本地(内存或文件)缓存。

php7进阶到架构师相关阅读

https://www.kancloud.cn/gofor/gofor

最后,欢迎大家留言补充,讨论~~~,
  • 机器人三大定律悖论(流言终结者机器人天才去世)
  • 2024-11-22流言终结者机器人天才去世文|米饭少年商学院新媒体副主编昨天一大早,同事群里突然有人发来这么一条消息:“《流言终结者》前主持格兰·今原病逝,享年49岁”就在有些人还在诧异的时候,有些人已经震惊了,说自己的青春在今天结束了震惊的。
  • 用什么方法可以去除法令纹(怎么去除法令纹)
  • 2024-11-22怎么去除法令纹法令纹是肌肤衰老的一种正常的表现,引起法令纹的原因有很多,面部表情过于丰富、睡觉姿势不当等都是引起法令纹的原因,法令纹对女生的外貌影响非常的大,那么怎么可以去除法令纹呢?1、每天做鼻翼按摩可以将食指弯。
  • 官方贝尼特斯出任大连一方新帅(大连一方报价贝尼特斯)
  • 2024-11-22大连一方报价贝尼特斯英国的《泰晤士报》报道在6月18日的一则消息称:大连一方以年薪1200万欧元欲邀请纽卡斯尔联主教练贝尼特斯执教球队我们暂时不去讨论这个消息是真还是假,不过,以目前大连一方的状况来看,确实已经到了换帅的。
  • 陈钰琪穿西服搭运动裤(陈钰琪穿驼色机车加绒夹克配牛仔长裤)
  • 2024-11-22陈钰琪穿驼色机车加绒夹克配牛仔长裤点击上方“蓝字”关注我们作为时尚风向标的当红女星们,任何季节都能通过不同的单品搭配,即使是日常单品,也能穿出应季应景的时尚气质感作为素人如果多留意他们的穿搭,学会借鉴,也能轻松达到完美效果像陈钰琪这套。
  • 想和你到一个遥远的地方去(在第一朵花开放的地方接你回家)
  • 2024-11-22在第一朵花开放的地方接你回家辽宁公安历经28年破获特大拐卖儿童案北票市,古称川州,隶属于辽宁省朝阳市北票之名源于清代煤矿开采清光绪年间,其境内发现煤矿4处,于1907年准予开采,并发给执照4张——即龙票因这4处煤矿皆在朝阳以北,。
  • 解押和抵押可以同时办理吗(抵房押车)
  • 2024-11-22抵房押车以案说“典”条文案例解读,让民法典从法律文本走向你我他第四章担保物权第二节抵押权一一般抵押权及抵押财产(拿什么押给“债主”)法言俗语在法律视角下,债主掏出的地契房契就是债务人借钱所作的抵押,债主通过持。
  • 3D集成技术(阿奇夏米尔与3DSystems宣布合作)
  • 2024-11-22阿奇夏米尔与3DSystems宣布合作增材制造/3D打印技术在实现产品设计创新以及商业模式创新方面起到积极作用但是要生产出一个合格的产品,单纯依靠3D打印设备是不现实的,激发这一技术在制造中发挥潜能的一种重要方式是将其与机械加工、EDM等。
  • 李贺黄沙百战穿金甲(雄鸡一声天下白)
  • 2024-11-22雄鸡一声天下白李贺《致酒行》零落栖迟一杯酒,主人奉觞客长寿主父西游困不归,家人折断门前柳吾闻马周昔作新丰客,天荒地老无人识空将笺上两行书,直犯龙颜请恩泽我有迷魂招不得,雄鸡一声天下白少年心事当拏云,谁念幽寒坐呜呃注。
  • 百色农二代芒果基地(百色芒果成为群众脱贫增收)
  • 2024-11-22百色芒果成为群众脱贫增收人民网-广西频道人民网百色6月18日电初夏时节,广西百色市右江区澄碧湖芒果产业示范区满山的芒果成熟了,齐刷刷一般大小的芒果犹如十八岁姑娘嫩滑的脸蛋,今年又是一个丰收年,果农们满脸洋溢着喜悦的笑容记者在。