CDN主要解决将数据缓存到离用户最近的位置,通常缓存静态资源文件(页面,脚本,图片,视频,文件等)。国内网络异常复杂,跨运营商的网络访问会很慢。为了解决跨运营商或各地用户访问问题,能够在重要的城市,部署CDN应用。使用户就近获取所需内容,下降网络拥塞,提升用户访问响应速度和命中率。缓存
CDN的基本原理是普遍采用各类缓存服务器,将这些缓存服务器分布到用户访问相对集中的地区或网络中,在用户访问网站时,利用全局负载技术将用户的访问指向距离最近的工做正常的缓存服务器上,由缓存服务器直接响应用户请求。服务器
(1) 未部署CDN应用前网络
网络请求路径:架构
请求:本机网络(局域网)——》运营商网络——》应用服务器机房负载均衡
响应:应用服务器机房——》运营商网络——》本机网络(局域网)优化
在不考虑复杂网络的状况下,从请求到响应须要通过3个节点,6个步骤完成一次用户访问操做。网站
(2) 部署CDN应用后视频
网络路径:blog
请求:本机网络(局域网)——》运营商网络图片
响应:运营商网络——》本机网络(局域网)
在不考虑复杂网络的状况下,从请求到响应须要通过2个节点,2个步骤完成一次用户访问操做。
与不部署CDN服务相比,减小了1个节点,4个步骤的访问。极大的提升的系统的响应速度。
(1)优势(摘自百度百科)
一、本地Cache加速:提高访问速度,尤为含有大量图片和静态页面站点;
二、镜像服务:消除了不一样运营商之间互联的瓶颈形成的影响,实现了跨运营商的网络加速,保证不一样网络中的用户都能获得良好的访问质量;
三、远程加速:远程访问用户根据DNS负载均衡技术智能自动选择Cache服务器,选择最快的Cache服务器,加快远程访问的速度;
四、带宽优化:自动生成服务器的远程Mirror(镜像)cache服务器,远程用户访问时从cache服务器上读取数据,减小远程访问的带宽、分担网络流量、减轻原站点WEB服务器负载等功能。
五、集群抗攻击:普遍分布的CDN节点加上节点之间的智能冗余机制,能够有效地预防黑客入侵以及下降各类D.D.o.S攻击对网站的影响,同时保证较好的服务质量。
(2)缺点
1.动态资源缓存,须要注意实时性;
解决:主要缓存静态资源,动态资源创建多级缓存或准实时同步;
2.如何保证数据的一致性和实时性须要权衡考虑;
解决:
摘自《云宙视频CDN系统》
目前,中小型互联网公司,综合成本考虑,通常租用第三方CDN服务,大型互联网公司,采用自建或第三方结合的方式。好比淘宝刚开始使用第三方的,当流量很大后,第三方公司没法支撑其CDN流量,淘宝最后采用自建CDN的方式实现。
淘宝CDN,以下图(来自网络):