首页 > > > CDN的原理,你真的了解CDN吗?
目前国内访问量非常大的网站、直播、视频平台,在大家体验看来,其实访问速度都是很快的。但是如果服务器部署在网通,那电信用户访问会比较慢。如果服务器部署在电信,网通用户访问很慢。其实这一切,都是跟CDN有关系,这篇文章,就跟着我们来认识一下CDN吧。
让我们先从一个例子,来说说什么是CDN技术。在二十多年前,大部分城市主流的购物方式,都是去某某百货商店、某某商场,很多人挤在一块小小的柜台前,挑选自己想要的东西。这在现在看来,非常的不方便。不论你买的是大件商品还是油盐酱醋,都要去到一个集中的商店里去寻找,可能有的时候还会遇到断货的情况,大老远的跑去却要悻悻而归,那你的心里是不是很崩溃。
这时候仓储式购物场所出现了,就是大家现在司空见惯的超市、便利店。便利店的出现,就是把本来需要集中的购物场所打散,把人们需要经常购买的商品提前放置在自己的卖场里,供顾客前来选购。
其实CDN,就好比是便利店,把本来需要集中获取的资源缓存到边缘节点,使用户就近访问。CDN全称Content Delivery Network,即内容分发网络。它解决的问题,就是在网络里增加一层缓存层,将源站的资源分发到距离用户最近的网络边缘节点,供用户快速访问。
CDN就是采用更多的缓存服务器(CDN边缘节点),布放在用户访问相对集中的地区或网络中。当用户访问网站时,利用全局负载技术,将用户的访问指向距离最近的缓存服务器上,由缓存服务器响应用户请求。
而且CDN并不是只能缓存视频内容,它还可以对网站的静态资源(例如各类型图片、html、css、js等)进行分发,对移动应用APP的静态内容(例如安装包apk文件、APP内的图片视频等)进行分发。
CDN的好处主要有以下几点:
最简单的CDN网络由一个DNS服务器和几台缓存服务器组成:

CDN边缘节点缓存策略因服务商不同而不同,但一般都会遵循http标准协议,通过http响应头中的Cache-control: max-age的字段来设置CDN边缘节点数据缓存时间。
当客户端向CDN节点请求数据时,CDN节点会判断缓存数据是否过期,若缓存数据并没有过期,则直接将缓存数据返回给客户端;否则,CDN节点就会向源站发出回源请求,从源站拉取最新数据,更新本地缓存,并将最新数据返回给客户端。
CDN服务商一般会提供基于文件后缀、目录多个维度来指定CDN缓存时间,为用户提供更精细化的缓存管理。
CDN缓存时间会对“回源率”产生直接的影响。若CDN缓存时间较短,CDN边缘节点上的数据会经常失效,导致频繁回源,增加了源站的负载,同时也增大的访问延时;若CDN缓存时间太长,会带来数据更新时间慢的问题。开发者需要对特定的业务,来做特定的数据缓存时间管理。 关于CDN这块的内容先介绍到这里,希望你能对CDN有了一定了解。请持续关注~

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31509949/viewspace-3125104/ ,如需转载,请注明出处,否则将追究法律责任。