CDN(Content Delivery Network)
调度
内容分发 包括代理+缓存
CDN加速场景
Web静态加速
Web动态加速
文件下载加速
视频点播加速
视频直播加速
rtmp
RTC
即时通信CDN
web文件加速
CDN业务标杆
Akamai
Azure
网宿
阿里
腾讯
CDN通用指标
主要性能指标。这些指标包含但不限于:
延时:指一个数据包从用户的计算机发送到网站服务器,然后再立即从网站服务器返回用户计算机的来回时间。延时越低,性能越好。
下载速度:指用户从网络上或者网络服务器上下载的数据时的传输速度。下载速度越快,性能越好。
打开速度:指用户打开网站的速度。打开速度越快,性能越好。
丢包率:指用户在网络传输中所丢失数据包数量占所发送数据组的比率。
回源率
:回源率分为回源请求数比例及回源流量比例两种。回源请求数比:指边缘节点对于没有缓存、缓存过期(可缓存)和不可缓存的请求占全部请求记录的比例。越低则性能越好。
回源流量比:回源流量是回源请求文件大小产生的流量和请求本身产生的流量。所以回源流量比=回源流量/(回源流量+用户请求访问的流量),比值越低,性能越好。
缓存命中率
:指终端用户访问加速节点时,该节点已缓存了要被访问的数据的次数占全部访问次数的比例。缓存命中率越高,性能越好。
【注】随着网络质量越来越好,CDN很多场景是做分流,减少源站压力;—— 一般会重点关注缓存命中率
。
CDN研发策略
如果公司业务规模不大,没有闲置机器,直接接入多家第三方CDN;—— 特别是国内CDN便宜
随着公司业务规模加大,闲置机器增多;可以采用第三方CDN与自建CDN相结合。
很多业务的加速场景是web静态文件加速;—— 这种场景甚至使用nginx/openresty的proxy-cache就可以起到很好的加速效果。
缓存加速采用 nginx的proxy-cache组件;
接入控制,缓存规则,均衡策略,采用nginx-lua脚本实现;—— 非常灵活。
当公司发展到需要大规模自建CDN时,多借鉴优秀的开源,并在开源的基础上逐步优化。 优秀的开源组件:
httpDNS
- CDN调度
nginx/openresty
- 接入控制,缓存规则,均衡策略,速率控制;
ATS
- 缓存组件;
针对国内和海外CDN加速
国内CDN比较便宜:采用第三方CDN为主,自研为辅;
—— 特别是在应对突发流量时,采用第三方CDN分流;
海外CDN比较 贵:如果业务有闲置资源,最好是利用开源组件搭建CDN;并不断进行优化。
参考链接
- https://help.aliyun.com/document_detail/140425.html?spm=a2c4g.11186623.6.549.74866cf2WcTSG4