CDN与缓存的归纳理解
缓存是什么
缓存是一个到处都存在的用空间换时间的例子。通过使用多余的空间,我们能够获取更快的速度。
我们通常意义上说的缓存主要包含两部分。之一个是用户浏览器端的缓存,第二个是服务器端为了提高访问速度而加的CDN。
首先,看看没有网站没有接入CDN时,用户浏览器与服务器是如何交互的:
用户在浏览网站的时候,浏览器能够在本地保存网站中的图片或者其他文件的副本,这样用户再次访问该网站的时候,浏览器就不用再下载全部的文件,减少了下载量意味着提高了页面加载的速度。
如果中间加上一层CDN,那么用户浏览器与服务器的交互如下:
客户端浏览器先检查是否有本地缓存是否过期,如果过期,则向CDN边缘节点发起请求,CDN边缘节点会检测用户请求数据的缓存是否过期,如果没有过期,则直接响应用户请求,此时一个完成http请求结束;如果数据已经过期,那么CDN还需要向源站发出回源请求(back to the source request),来拉取最新的数据。CDN的典型拓扑图如下:
可以看到,在存在CDN的场景下,数据经历了客户端(浏览器)缓存和CDN边缘节点缓存两个阶段,下面分别对这两个阶段的缓存进行详细的剖析
客户端(浏览器)缓存
客户端缓存的缺点
客户端缓存减少了的服务器请求,避免了文件重复加载,显著地提升了用户地方。但是当网站发生了更新的时候(如替换了css、js以及图片文件),浏览器本地仍保存着旧版本的文件,从而导致无法预料后果。
曾几何时,一个页面加载出来,页面各米素位置乱飘,按钮点击失效,前端GG都会习惯性地问一句:“缓存清了没?”,然后Ctrl+F5 ,Everything is OK。但有些时候,如果我们是简单地在浏览器地址栏中敲一个回车,或者是仅仅按F5刷新,问题依然没有解决,你可知道这三种不同的操作方式,决定浏览器不同的刷新缓存策略?
浏览器如何来确定使用本地文件还是使用服务器上的新文件?下面来介绍几种判断的 *** 。
浏览器缓存策略
Expires
Expires:Sat, 24 Jan 2015 20:30:54 GMT
如果http响应报文中设置了Expires,在Expires过期之前,我们就避免了和服务器之间的连接。此时,浏览器无需想浏览器发出请求,只需要自己判断手中的材料是否过期就可以了,完全不需要增加服务器的负担。
大多数时间我们都是通过微信联系关系好的朋友,在用微信交流过程中与朋友发生口角,一气之下删掉对方好友或者清空微信聊天记录,事后想要恢复回来用着招,轻松恢复聊天记录! 微信使用小技巧:关闭朋友圈烦...
微信怎么关联共享老公微信账号同时接收消息 2个微信联号方法!专业盗取微信密码,开房查询,通话记录查询,查询微信聊天记录,非常靠谱!如果你喜欢一个人,你就躲不起来,即使你捂住嘴,你的眼睛还是会流出来的。...
肖玲观察她老公很久,总觉得最近他怪怪的。对她莫名其妙的殷勤,而且总是对着手机傻笑。她总想逮个机会,看一下他老公到底在跟谁聊天,笑得那么灿烂。可是奈何她老公反侦察能力超强,只要一靠近他要看手机,他就赶紧...
在线免费接单QQ平台在电视剧情节中,我们经常会看到一些女主角跟老公白手起家两个人创立了公司,但是有钱之后老公就变得夜不归宿,但是又没有确凿的证据证实老公出轨了,所以只能找调查公司或者私人侦探。 一般私...
我怎样绑定老公的微信,非常简单的几种方法,有人说,牵挂即是不管你走到何处,做甚么,你的脑海里都填塞了相互。即便看到甘旨的食品也会让你们想起对方的模样。不妨由于男女之间存在必然的迥异,造成男女对情绪的明...
要怎么查老公住酒店记录_怎么查老公住过的宾馆 近年来,互联网技术飞速发展,随之衍生出的物联网、人工智能技术也迎来了春天。曾有专家预测,到了2020年,全球物联网市场规模将达17000亿美米,大约会有...