1、CDN 简介
官方描述
CDN即内容分发网络(Content Delivery Network)的简称,是建立在承载网基础上的虚拟分布式网络,能够将源站内容(包括各类动静态资源)智能缓存到全球各节点服务器上,方便用户就近获取内容,提高资源的访问速度,同时分担了源站压力。
通俗描述
当全国各地不同的用户访问某个资源的时候,CDN 能够智能选择距离用户最近、最优的服务器去提供服务,避免由于跨区域跨、网络运营商带来的加载慢问题。
举个例子
以淘宝物流和京东物流为例:
- 淘宝:不论买家地理位置如何,购买后北京卖家都是从北京发货
- 京东:根据买家位置,智能选择就近的仓库进行发货
传统服务器架构就好比淘宝。资源存储在北京电信服务器上,不论访问者身在何处使用何种网络,都是从北京的电信服务器上读取资源。
使用 CDN后的网站架构就好比京东物流。资源存储在全国各地的 CDN 节点服务器中,根据访问者地理位置与网络,智能选择最优的服务器。
拓展
PCDN(P2P CDN)大家平时可能也接触过,PCDN单价较低,更适用于大流量内容分发,他是将部署在机房的边缘节点下沉到用户设备中,比如电脑、手机、路由器。
最典型的例子:利用闲置带宽挂机赚取金币等,然后兑换现金,比如:红米路由器
2、使用 CDN 后访问速度提升的原因
- CDN 会把资源缓存到各节点服务器上,类似反向代理,避免每次请求都从源站拉取资源;
- CDN 能够智能选择离访问者最近的节点服务器;
- CDN 能够智能选择与访问者最匹配的网络运营商。
3、使用 CDN 后会有什么问题
- 内容缓存问题;(所以我们的口播修改的时候会涉及到成本问题)
- 盗刷产生的高额费用,所以最好配合防盗链、鉴权等使用;
4、CDN 使用场景
- 图片小文件:社交、博客、摄影类网站,用途最为广泛
- 视频点播:短视频、点播类网站
- 大文件下载:应用分发、更新版本,文件分享类网站
- 动态加速:涉及到动态请求,比如用户登录、评论,商品加入购物车等业务
5、使用人数较多的 CDN 厂商
- 阿里云:kunlun.com
- 腾讯云:.cdn.dnsv1.com、.dsa.dnsv1.com
- 七牛云:*.qiniudns.com
- 又拍云:*.aicdn.com
6、CDN 源站类型
源站为对象存储:方便管理,节省硬件采购和运维人员的支出
源站为服务器 IP:一般用于接口请求加速
7、案例分析
CDN 在喜马拉雅侧的应用
7.1 资源分发加速
腾讯云:aod.cos.tx.xmcdn.com
阿里云:imgopen.xmcdn.com、audio.ali.xmcdn.com
阿里全球加速:audio.xmcdn.com、vod.xmcdn.com
https://aod.cos.tx.xmcdn.com/storages/586e-audiofreehighqps/D4/65/CKwRIW4EEZBVADZ-YACM4mf_.mp3
7.2 图片处理
原图: https://imgopen.xmcdn.com/storages/9690-audiofreehighqps/AB/5C/CMCoOSIDZWxOAAqroABfHCH1.jpg
小图: https://imgopen.xmcdn.com/storages/9690-audiofreehighqps/AB/5C/CMCoOSIDZWxOAAqroABfHCH1.jpg!op_type=5&upload_type=album&device_type=ios&name=mobile_small&magick=png
中图: https://imgopen.xmcdn.com/storages/9690-audiofreehighqps/AB/5C/CMCoOSIDZWxOAAqroABfHCH1.jpg!op_type=5&upload_type=album&device_type=ios&name=medium&magick=png
大图: https://imgopen.xmcdn.com/storages/9690-audiofreehighqps/AB/5C/CMCoOSIDZWxOAAqroABfHCH1.jpg!op_type=5&upload_type=album&device_type=ios&name=mobile_large&magick=png
7.3 音视频处理
专辑 ID:6233693
声音 ID: 27381506
原始音频:https://aod.cos.tx.xmcdn.com/group71/M05/B0/12/wKgOz146kizB4qIOACn-AYktbM0139.mp3
转码后的带有口播的音频:http://open.fdfs.xmcdn.com/group99/MP3/64/OP/3/TtwKgJL1hbviHxMoGYACme-poxu40198.mp3
7.4 防盗链处理
专辑 ID: 30816438
声音 ID: 233368166
播放 URL(2 小时有效):https://audiopay.cos.tx.xmcdn.com/download/1.0.0/storages/4f29-audiopay/12/2B/CMCoOR4DRjXgAPGzrgBYTh68.m4a?sign=7c9feb06c3646d64693e0bd014c8d700&buy_key=7889008128&token=9368×tamp=1614581507&duration=1956
这里可以实际操作下:
公开:https://qn-public.timhbw.com/test.jpeg
私有:https://qn-private.timhbw.com/test.jpeg
7.5 便捷设置响应头
Access-Control-Allow-Methods: GET, POST, OPTIONS
Access-Control-Allow-Origin: *