CDN原理及为自己的网站部署
CDN是什么?
CDN (Content Delivery Network or Content Ddistribute Network)内容分发网络。其目的是使用户可就近取得所需内容,解决 Internet网络拥挤的状况,提高用户访问网站的响应速度。类似分布各地的物流仓储网络,CDN网络可以将源站的内容缓存到分布全球的CDN节点,根据用户的访问IP,就近连接CDN,提高网站响应速度。
一般的网站只有一台或一组服务器,用户访问站点时请求需要跨越复杂的路由链路,抵达网站服务器,经过tcp三次握手建立连接,服务器才会将站点数据传输给用户。
使用CDN加速后,CDN在全球的分布式节点将会拷贝一份源站的数据(图片、js、html等等),称为缓存,用户在访问源站域名时会被DNS解析到最近的CDN服务器,并且访问缓存资源。
普通的网站访问流程和使用CDN的网站访问如下图,其中蓝色链路是无CDN的链路
访问
为什么要使用CDN
从上面的流程中我们可以简单了解到源站访问的缺陷
需要通过情况复杂的路由链路,用户请求网页到网页最终呈现的时间太长。用户满意的网页打开时间是在2秒以下,用户能够忍受的极限等待时间是8秒,超过8秒大部分用户会选择离开网页。
连接质量受源站带宽限制,每增加一个用户,源站服务器就要扩充一份带宽才能满足需求,然而带宽的成本非常高</