cdn缓存

原创 2015年07月09日 23:37:54

1:缓存是什么?

首先,看看没有网站没有接入CDN时,用户浏览器与服务器是如何交互的:
这里写图片描述

如果中间加上一层CDN,那么用户浏览器与服务器的交互如下:
这里写图片描述

客户端浏览器先检查是否有本地缓存是否过期,如果过期,则向CDN边缘节点发起请求,CDN边缘节点会检测用户请求数据的缓存是否过期,如果没有过期,则直接响应用户请求,此时一个完成http请求结束;如果数据已经过期,那么CDN还需要向源站发出回源请求(back to the source request),来拉取最新的数据。

2:CDN缓存

浏览器本地缓存失效后,浏览器会向CDN边缘节点发起请求。类似浏览器缓存,CDN边缘节点也存在着一套缓存机制。

3:CDN缓存缺点

CDN的分流作用不仅减少了用户的访问延时,也减少的源站的负载。但其缺点也很明显:当网站更新时,如果CDN节点上数据没有及时更新,即便用户再浏览器使用Ctrl +F5的方式使浏览器端的缓存失效,也会因为CDN边缘节点没有同步最新数据而导致用户访问异常。

4:CDN缓存策略

CDN边缘节点缓存策略因服务商不同而不同,但一般都会遵循http标准协议,通过http响应头中的Cache-control: max-age的字段来设置CDN边缘节点数据缓存时间。

当客户端向CDN节点请求数据时,CDN节点会判断缓存数据是否过期,若缓存数据并没有过期,则直接将缓存数据返回给客户端;否则,CDN节点就会向源站发出回源请求,从源站拉取最新数据,更新本地缓存,并将最新数据返回给客户端。

CDN服务商一般会提供基于文件后缀、目录多个维度来指定CDN缓存时间,为用户提供更精细化的缓存管理。

CDN缓存时间会对“回源率”产生直接的影响。若CDN缓存时间较短,CDN边缘节点上的数据会经常失效,导致频繁回源,增加了源站的负载,同时也增大的访问延时;若CDN缓存时间太长,会带来数据更新时间慢的问题。开发者需要增对特定的业务,来做特定的数据缓存时间管理

5:CDN缓存刷新

CDN边缘节点对开发者是透明的,相比于浏览器Ctrl+F5的强制刷新来使浏览器本地缓存失效,开发者可以通过CDN服务商提供的“刷新缓存”接口来达到清理CDN边缘节点缓存的目的。这样开发者在更新数据后,可以使用“刷新缓存”功能来强制CDN节点上的数据缓存过期,保证客户端在访问时,拉取到最新的数据。

版权声明:本文为博主原创文章,未经博主允许不得转载。

CDN缓存那些事

CDN缓存那些事 CDN是什么? 谈到CDN的作用,可以用8年买火车票的经历来形象比喻: 8年前,还没有火车票代售点一说,12306.cn更是无从说起。那时候...
  • wangxin1982314
  • wangxin1982314
  • 2016年04月03日 14:22
  • 7425

浏览器与cdn缓存

前端缓存分为浏览器缓存和cdn缓存   关于是否缓存,是浏览器缓存还是CDN缓存,缓存保留多长时间,由cache-control控制 请求: 响应: 特别说明:  Cache-control: p...
  • lu123535884
  • lu123535884
  • 2016年05月24日 15:41
  • 7327

CDN缓存

CDN缓存那些事 CDN是什么? 谈到CDN的作用,可以用8年买火车票的经历来形象比喻: 8年前,还没有火车票代售点一说,12306.cn更是无从说起。那时候...
  • zero_295813128
  • zero_295813128
  • 2015年07月17日 14:34
  • 855

CDN缓存

CDN缓存概览 1)CDN 读取数据过程为:用户访问您的源,先去查找CDN的1级节点,再查找CDN2级节点,2级节点没有,再查找源,源中的数据同步到2级节点,2级节点同步到1级节点,再从1级节点返回...
  • fanren224
  • fanren224
  • 2016年08月06日 14:53
  • 486

如何查看一个URL是否命中CDN缓存

给网站使用CDN后,查看访问网站是否命中CDN缓存,用浏览器简单访问测试就可以看到。 查看方法如下: 1. 使用谷歌chrome或者火狐浏览器,在浏览器界面,按F12,打开浏览器调试界面,...
  • u010472499
  • u010472499
  • 2017年01月09日 16:53
  • 2937

CDN缓存那些事

CDN是什么? 谈到CDN的作用,可以用8年买火车票的经历来形象比喻: 8年前,还没有火车票代售点一说,12306.cn更是无从说起。那时候火车票还只能在火车站的售票大厅购买,而我...
  • u012028371
  • u012028371
  • 2016年12月28日 11:35
  • 2024

切莫让CDN缓存你的动态文件

是这样的:我们这里有一个域名上了CDN,本来是缓存一些IMG和JS等一些静态资源的。但是因为业务需求,我们新添加了一个动态php文件做接口来接受一些用户的反馈内容。 然后今天在这个接口在线上出了一点...
  • qq_21267705
  • qq_21267705
  • 2016年07月08日 21:32
  • 1998

CDN缓存原理、策略

1.CDN加速原理   通过动态域名解析,网友的请求被分配到离自己最快的服务器。CDN服务器直接返回缓存文件或通过专线代理原站的内容。   网络加速+内容缓存,有效提供访问速度   2.CDN节...
  • liyong199012
  • liyong199012
  • 2014年03月23日 21:00
  • 4377

CDN缓存那些事

CDN是什么? 谈到CDN的作用,可以用8年买火车票的经历来形象比喻: 8年前,还没有火车票代售点一说,12306.cn更是无从说起。那时候火车票还只能在火车站的售票大厅购买,而我...
  • u012028371
  • u012028371
  • 2016年12月28日 11:35
  • 2024

最新正确配置百度CDN让你的博客飞起来

很多人感觉使用百度CDN对网站的速度没有多大的提升,这个时候也许你会跟我之前一样放弃使用,下面我来讲一下你可能忽略的点,先看一下我的博客速度,我博客速度已经飞起来了你还在等什么 这里我17ce上面测...
  • a454213722
  • a454213722
  • 2016年02月21日 12:00
  • 1946
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:cdn缓存
举报原因:
原因补充:

(最多只允许输入30个字)