网站建设

[科普]一篇文章了解 CDN 原理,附实际应用讲解

timhbw · 4月8日 · 2021年

1、CDN 简介

官方描述

CDN即内容分发网络(Content Delivery Network)的简称,是建立在承载网基础上的虚拟分布式网络,能够将源站内容(包括各类动静态资源)智能缓存到全球各节点服务器上,方便用户就近获取内容,提高资源的访问速度,同时分担了源站压力。

通俗描述

当全国各地不同的用户访问某个资源的时候,CDN 能够智能选择距离用户最近、最优的服务器去提供服务,避免由于跨区域跨、网络运营商带来的加载慢问题

举个例子

以淘宝物流和京东物流为例:

淘宝:不论买家地理位置如何,购买后北京卖家都是从北京发货

京东:根据买家位置,智能选择就近的仓库进行发货

传统服务器架构就好比淘宝。资源存储在北京电信服务器上,不论访问者身在何处使用何种网络,都是从北京的电信服务器上读取资源。

使用 CDN后的网站架构就好比京东物流。资源存储在全国各地的 CDN 节点服务器中,根据访问者地理位置与网络,智能选择最优的服务器。

 

拓展

PCDN(P2P CDN)大家平时可能也接触过,PCDN单价较低,更适用于大流量内容分发,他是将部署在机房的边缘节点下沉到用户设备中,比如电脑、手机、路由器。

最典型的例子:利用闲置带宽挂机赚取金币等,然后兑换现金,比如:红米路由器

2、使用 CDN 后访问速度提升的原因

  • CDN 会把资源缓存到各节点服务器上,类似反向代理,避免每次请求都从源站拉取资源;
  • CDN 能够智能选择离访问者最近的节点服务器;
  • CDN 能够智能选择与访问者最匹配的网络运营商。

3、使用 CDN 后会有什么问题

  • 内容缓存问题;(所以我们的口播修改的时候会涉及到成本问题)
  • 盗刷产生的高额费用,所以最好配合防盗链、鉴权等使用;

4、CDN 使用场景

  • 图片小文件:社交、博客、摄影类网站,用途最为广泛
  • 视频点播:短视频、点播类网站
  • 大文件下载:应用分发、更新版本,文件分享类网站
  • 动态加速:涉及到动态请求,比如用户登录、评论,商品加入购物车等业务

使用人数较多的 CDN 厂商

  • 阿里云*kunlun*.com
  • 腾讯云*.cdn.dnsv1.com、*.dsa.dnsv1.com
  • 七牛云*.qiniudns.com
  • 又拍云*.aicdn.com

5、CDN 源站类型

  • 源站为对象存储:方便管理,节省硬件采购和运维人员的支出
  • 源站为服务器 IP:一般用于接口请求加速

 

6、案例分析

CDN 在喜马拉雅侧的应用

6.1 资源分发加速

  • 腾讯云:aod.cos.tx.xmcdn.com
  • 阿里云:imgopen.xmcdn.com、audio.ali.xmcdn.com
  • 阿里全球加速:audio.xmcdn.com、vod.xmcdn.com

 

 

6.2 图片处理

    

6.3 音视频处理

 

6.4 防盗链处理

 

这里可以实际操作下:

 

6.5 便捷设置响应头

  • Access-Control-Allow-Methods: GET, POST, OPTIONS
  • Access-Control-Allow-Origin: *

0 条回应