CDN(Content Delivery Network)翻译为内容分发网络,是通过在现有的 Internet 中增加一层新的网络架构,将网站的内容发布到最接近用户的网络 " 边缘 " ,使用户可以就近取得所需的内容,解决 Internet 网络拥塞状况,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等原因,造成的用户访问网站的响应速度慢的问题,说得简单一点就是需要一组分布在不同地域和不同网络的服务器就近对用户提供服务,而这一组服务器充当的就是智能缓存服务器的作用。 通过用户就近性和服务器负载的判断, CDN 确保内容以一种极为高效的方式为用户的请求提供服务。内容服务基于缓存服务器,因此也称为代理缓存,它位于网络的边缘,距用户仅有一步之遥。同时,代理缓存是内容提供商源服务器的一个透明镜像。这样的架构使得 CDN 服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验。采用 CDN 技术,能处理整个网站页面的 70% ~ 95 %的内容访问量,减轻服务器的压力,提升了网站的性能和可扩展性。 CDN是一个经策略性部署的整体系统,能够帮助用户解决分布式存储、负载均衡、网络请求的重定向和内容管理等问题;CDN代表了一种基于质量与秩序的网络服务模式。 先来回顾一下传统的网站访问过程: 可以看出,传统方式无法处理处于不同网络、不同地域的用户网络访问缓慢的问题,如果为这些用户就近部署一层cache,用户的访问的内容都从这个cache中得到,这个不就问题解决了么!而CDN架构就是这么一个整体策略部署架构。 现在我们来看采用CDN后的访问过程:
当有其他用户再次访问同样内容时,CDN将直接将数据返回给客户,完成请求/服务过程。 通过以上的分析我们可以看出,CDN服务对网站访问提供加速的同时,可以实现对普通访问用户透明,即加入缓存以后用户客户端无需进行任何设置,直接输入被加速网站原有的域名即可访问。 1. 用户在浏览器中输入要访问的域名; 2. 浏览器向域名解析服务器(DNS)发出解析请求,获得此域名对应的IP地址; 3. 浏览器利用所得到的IP地址,向该IP对应的目标服务器发出访问请求; 4. 目标服务器响应该请求,将数据发送至用户浏览器端。
用户向浏览器提供要访问网站的域名,例如www.web.com,域名解析的请求被发往网站的DNS域名解析服务器;
由于网站的DNS域名解析服务器对此域名的解析设置了CNAME,请求被指向CDN网络中的智能DNS负载均衡系统;
智能DNS负载均衡系统对域名进行智能解析,将响应速度最快的节点IP返回给用户;
浏览器在得到速度最快节点的IP地址以后,向CDN节点发出访问请求;
由于是第一次访问,CDN节点将回到源站取用户请求的数据并发给用户;
注:
1. DNS域名在解析得到对应的CDN节点时会根据地理位置(深圳还是上海)、接入网类型(电信还是网通)将用户的访问请求定位到离用户路由最短、位置最近、负载最轻的Cache节点(缓存服务器)上,实现就近定位。定位优先原则可按位置、可按路由、也可按负载等
2. CNAME: 规范命名,也叫别名
来源:https://www.cnblogs.com/lovingprince/archive/2009/10/07/2166303.html