CDN的全称是Content Delivery Network,即内容分发网络。其目的是经过在现有的Internet中增长一层新的CACHE(缓存)层,将网站的内容发布到最接近用户的网络"边缘"的节点,使用户能够就近取得所需的内容,提升用户访问网站的响应速度。从技术上全面解决因为网络带宽小、用户访问量大、网点分布不均等缘由,提升用户访问网站的响应速度。 http://www.51know.info/system_performance/cdn/cdn.htmlhtml
能够认为,CDN就是加上了智能DNS和缓存层的反向代理集群。因为智能DNS可以根据请求的来源定位到离用户较近的缓存服务器,所以有效的缩短了链接时间,而缓存层的存在极大的提升了下载速度,而且再也不受限于源站的带宽大小。注意上述第二点仅针对静态资源有意义,对于动态内容(好比POST请求,WebSocket链接),CDN仍然须要将请求发回源站再将结果返回,并不能起到加速做用。下面就针对上述分析进行实验验证。web
以下图所示,使用CDN以后,不管是链接时间仍是下载时间都明显缩短,下载速度也有5倍以上的提速。缓存
测速网站:http://www.17ce.com/服务器
选择一台远离源站的服务器,运行Node基准测试,前后与源站和CDN站创建WebSocket链接,发送消息,计算总耗时。测试结果显示,与直连源站相比,使用CDN并无起到加速效果,反而有所降低。不难理解,这是由于去掉缓存以后,CDN平白在用户和源站之间多加了一层链路。网络
http://emacoo.cn/blog/web-cdn-benchmark测试