CDN的概念
内容分发网络 CDN (Content Delivery Network)是解决网络连接速度的问题,可以提高访问速度。
1.业务背景
一般客户通过互联网访问网站服务,客户访问服务器的流程如下: Client -> Internet -> Server 。在这个过程中,有几个影响访问速度(用户打开网页速度)的因素:client和internet之间的连接,internet中间的连接,服务器和internet之间的连接,任何一个环节出问题,都会降低访问速度,影响客户体验。
首先,看一下如何优化客户跟服务器连接的速度:
- 访问速度受 服务器和客户之间的物理距离影响:如果客户在北京,那把服务器部署在北京最好;如果客户在上海,把服务器部署在上海最好。但是如果我们的客户分散在全国各地,我们想让所有客户访问速度一样快,就可能需要在全国各大城市都部署服务器,就可以解决带宽问题。
- 访问速度受宽带运营商影响,(电信,网通,铁通):可能我们的客户分布在不同的运营商,如果想让它们访问速度都快,就可能需要在3个运营商都部署服务器,或者在一台服务器接三个宽带,然后主机规划路由
这样带来的问题呢
- 成本比较高:硬件,人员维护
- 技术方面的问题:要保证所有服务器的数据一致,要做数据同步的任务,比较复杂
2.CDN可以解决的问题
CDN的模式,就有点像次日达的模式,次日达是在全国各地都建物流仓库,各个仓库把客户可能购买的商品准备好,等到用户下单,直接从就近仓库发货。CDN是提前把客户可能用到的数据放到离客户比较近的节点中,客户直接从距离自己最近的节点获取数据。解决可最后一个公里传输质量问题。CDN的质量参数:节点数量。CDS适合视频类网站,因为视频超大,可以提高视频播放速度
解决最后一公里传输质量
- 用户与服务器物理距离远,多次网络转发,延时高,且不稳定
- 先进的分布式系统架构,国内节点数最多的云CDN:全球1500+
弹性带宽,低成本:这是云的优点
- 资源弹性扩展,按实际使用量付费,接入即可实现跨运营商,跨地域的全网覆盖
- 先用后付,提供按流量或峰值带宽两种计费方式,满足不同业务需求
减少源站压力,节省源站带宽成本
- 没有CDN,网站服务器的带宽要足够大,因为所有客户都是从源站获取数据。在CDN中,提前把数据从源站放到各个边缘节点,由边缘节点提供客户访问服务,所以源站的配置不用太高。
- 对于网站突发流量,无需用户干预,自动做出响应和调整,有效减少源站压力
- CDN是公认的最具性价比的解决方案
3.阿里云CDN的概念
阿里云内容分发网络CDN(Content Delivery Network)是建立并覆盖在承载网之上,由分布在不同区域的边缘节点服务器群组成的分布式网络。阿里云CDN分担源站压力,避免网络拥塞,确保在不同区域,不同场景下加速网站内容的分发,提供资源访问速度。
阿里云CDN将源站资源缓存至阿里云遍布全球的加速(边缘)节点上,当终端用户请求访问和获取该资源时,无需回源,系统自动调用离终端服务最近的CDN节点上已缓存的资源。
可以把加速节点在全球的分布作为判断CDN加速质量的一个非常重要的标准,节点越多,加速效果更好。
CDN相关的产品
可以和CDN结合使用的阿里云产品有如下这些
对象存储OSS:可以在OSS中使用CDN加速,提高网站访问速度,有效降低OSS的外网流量费用
- OSS存的照片,音乐,视频比较大的非结构化的数据
- CDN的流量由CDN来承担