CDN与智能DNS原理和应用

242 阅读6分钟

CDN是内容分发网络。

CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器。(CDN就是把我们网站产生的内容更多的分发到用户请求的网络中去,所以CDN的这样一个服务就是互联网上一个分布式的网络。)好处就是可以让用户就近取得所需的内容,提高用户访问网站的响应速度。 CDN = 更智能的镜像 + 缓存 + 流量导流;网站的镜像更多的就是把这个网站的内容完完整整的copy一份

通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。CDN的关键技术主要有内容存储和分发技术。

只要我们的网站规模大一点,比如访问量达到了每天10w这个量级,很可能就启用CDN这样的一个服务,CDN服务可以帮助我们的网站做到一个更大规模的访问量,用户在使用时速度会比较快。

DNS Domain Name System,域名系统。 DNS解析就是域名解析, 域名和IP地址相互映射的一个分布式数据库。好处就是我们访问一个网站的时候不用记住一个网站的IP地址,我们只需要记住这个网站的域名就好了

CDN加速原理

内容缓存

对网站内容进行缓存处理, 实现方面大多数会用squid作为web服务,也可以换成nginx、Apache等等都是类似的,主要作用的就是做内容缓存,就是他所有的用户请求过来,对比本地是否有缓存,有缓存就是直接返回给了用户,另外就是说请求过来发现本地没有缓存,或者缓存已经过期了,config就是根据后台做的相应配置去源站把数据再抓取过来,然后再把抓取到的数据做缓存,再把数据返回给用户。内容缓存到内存和本地文件里,这个其实也是跟整个的缓存的内容量包括跟web服务相应的配置相关,其实也可以完全的用到本地文件来缓存,因为如果启用了这种本地软件他能够缓存页面的数据量肯定会更大,频繁访问的数据,经常更新的数据放在内存里面相对把访问比较低的比较冷的数据放在本地文件里面,这样就能实现更少的去抓取数据,所以这个性能和效率也会更好的。因为做到这种缓存,所以整个页面的访问速度也就会更快,因为他不需要去源站,所有人都去源站访问,那么源站的网络带款或者是源站的处理性能就会产生瓶颈,然后我们通过CDN加速服务直接通过本地缓存里面把数据拿到,所以整个页面的访问速度都会非常好,整个是CDN加速最基本的一点,就是用到了内容的缓存。

CDN的服务,他是一个内容分发网络,所以他是有很多的网络节点,大部分这种CDN服务如果他是做CDN服务商的话,那么肯定是在全国的各个地方都会有这种网络节点,网络运营商关于CDN的服务商迅雷星域属于流量共享模式,上百万个节点,他是一个流量共享平台, 比如我家装的是电信100M的宽带,加入星域系统就会采购一个相应的硬件,有这个硬件的时候,就会在流量富裕的时候就会把我的贷款共享出来,也许运气好的话,一个热播剧晚上很多人来看,那么就没有必要全部所有人从视频网站去拉取这个内容,如果我有星域这样的一个服务,那如果我的节点我本地已经缓存了这个电视剧,就意味着周围的人可以直接从我的带宽里面直接可以下载这个热播剧的视频内容,所以他的距离就会很近速度也会非常快,这样就达到了一个 首先我作为一个普通用户加入这样的星域服务就可以把我的流量共享出来,然后其他的用户再使用的时候就能够就近地用到这样一个缓存到的数据用户的访问速度也会更快,用户共享也会有相应的服务的收入。这个模式在之前传统的CDN模式是不一样的,传统的CDN模式是我需要去全国上百个城市去各个地方去采点,去租用或者自己去建相应的机房然后去租用带宽、部署服务器还要去托管 维护等等整个的事情做起来不简单,传统的CDN的服务商做这种CDN的服务其实很不简单,迅雷星域完全是用户共享自己的流量这样的一种模式,它的网络节点并不是传动的CDN部署那么多的机房租用带宽的网络节点,而是把这个网络节点放到了普通用户的家庭宽带里,它的特点和技术原理就是把这些网络节点在全国分布式部署,

CDN服务多线路支持,1.同时支持电信、网通、联通等多种线路。2.不同于双线机房的双线接入,就是我们部署一个网站的时候啊,部署一个规模比较小,部好几个机房好几种线路接入可能不太现实,维护起来代价大,很多时候可能会采用一种双线机房,就是我这样的一套服务接入两套网络,同时支持电信和联通,那不管是男方的电信用户还是北方的联通用户这样他的性能和访问速度都是比较好的。3.减少跨网访问,电信的用户就是走电信的网络,联通的用户走联通的网络,不需要走跨网的请求。CDN的性能和效率也会更高一些。

适用范围 产品的内容是静态的或者更新的频率低更适用

4