- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
服务端缓存
服务端缓存又分为服务器缓存和反向服务器缓存(也叫网关缓存,比如Nginx反向、
Squid等),其实广泛使用的CDN也是一种服务端缓存,目的都是让用户的请求走”捷径“,并且都
是缓存、文件等静态资源。
客户端缓存
客户端侧缓存一般指的是浏览器缓存,目的就是加速各种静态资源的,想想现在的大型,随
便一个页面都是一两百个请求,每天pv都是亿级别,如果没有缓存,用户体验会急剧下降、同时服
务器和网络带宽都严重的考验。
客户端缓存主要是HTTP协议定义的缓存机制(如Expires,Cache-Control字段),也有非HTTP协议
定义的缓存,使用HTTP-MATE
如
METAHTTP-EQUIV=PragmaCONTENT=no-cache
•1
上述代码的作用是告诉浏览器当前页面不被缓存,每次都需要去服务器拉取。使用上很简单,但
只有部分浏览器可以支持,而且所有缓存服务器都不支持,因为不解析HTML内容本身。
Expires策略
Expires是Web服务器响应消息头字段,在响应http请求时告诉浏览器在过期时间前浏览器可以直
接从浏览器缓存取数据,而无需再次请求。
Date头域表示消息发送的时间,时间的描述格式由rfc822定义。例如,Date:Mon,31Dec2001
04:25:57GMT。
Web服务器告诉浏览器在2012-11-2803:30:01这个时间点之前,可以使用缓存文件。发送请求的时
间是2012-11-2803:25:01,即缓存5分钟。
不过Expires是HTTP1.0的东西,现在默认浏览器均默认使用HTTP1.1,所以它的作用基本忽略。
Cache-Control策略
Cache-Control与Expires的作用一致,都是指明当前资源的有效期,控制浏览器是否直接从浏览器
缓存取数据还是重新发请求到服务器取数据。只不过Cache-Control的选择,设置更细致,如果
同时设置的话,其优先级高于Expires。
HTTP-Header中的Cache-Control字段:
可以是public、private、no-cache、no-store、no-transform、must-revalidate、-revalidate、
max-age
各个消息中的指令含义如下:
•
public指示响应可被任何缓存区缓存。
•
•
private指示对于单个用户的整个或部分响应消息,不能被共享缓存处理。这允许服务器仅仅描述当用
户的部分响应消息,此响应消息对于其他用户的请求无效。
•
•
no-cache指示请求或响应消息不能缓存
•
•
no-store用于防止重要的信息被无意的发布。在请求消息中发送将使得请求和响应消息都不使用缓存。
•
•
max-age指示客户机可以接收期不大于指定时间(以秒为单位)的响应。
•
•
min-fresh指示客户机可以接收响应时间小于当前时间加上指定时间的响应。
•
•
max-stale指示客户机可以接收超出超时期间的响应消息。如果指定
文档评论(0)