-
调度
-
内容分发 包括代理+缓存
-
Web静态加速
-
Web动态加速
-
文件下载加速
-
视频点播加速
-
视频直播加速
-
rtmp
-
RTC
-
-
即时通信CDN
-
Akamai
-
Azure
-
网宿
-
阿里
-
腾讯
主要性能指标。这些指标包含但不限于:
-
延时:指一个数据包从用户的计算机发送到网站服务器,然后再立即从网站服务器返回用户计算机的来回时间。延时越低,性能越好。
-
下载速度:指用户从网络上或者网络服务器上下载的数据时的传输速度。下载速度越快,性能越好。
-
打开速度:指用户打开网站的速度。打开速度越快,性能越好。
-
丢包率:指用户在网络传输中所丢失数据包数量占所发送数据组的比率。
-
回源率
:回源率分为回源请求数比例及回源流量比例两种。-
回源请求数比:指边缘节点对于没有缓存、缓存过期(可缓存)和不可缓存的请求占全部请求记录的比例。越低则性能越好。
-
回源流量比:回源流量是回源请求文件大小产生的流量和请求本身产生的流量。所以回源流量比=回源流量/(回源流量+用户请求访问的流量),比值越低,性能越好。
-
-
缓存命中率
:指终端用户访问加速节点时,该节点已缓存了要被访问的数据的次数占全部访问次数的比例。缓存命中率越高,性能越好。
【注】随着网络质量越来越好,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;并不断进行优化。