内容交付网络 (CDN) 是负责内容交付的 Internet 的透明骨干网。不管我们是否知道,我们每个人每天都在与 CDN 进行交互;在阅读新闻网站上的文章、在线购物、观看 YouTube 视频或阅读社交媒体订阅源时。
无论您做什么,或者您消费什么类型的内容,您都可能会在传送到您的 PC 和移动浏览器的每个文本字符、每个图像像素和每个电影帧后面找到 CDN。要了解 CDN 为何如此广泛使用,您首先需要了解它们旨在解决的问题。被称为延迟,这是从您请求加载网页的那一刻到其内容实际出现在屏幕上的那一刻发生的令人讨厌的延迟。
该延迟间隔受许多因素的影响,其中许多因素特定于给定的网页。但是,在所有情况下,延迟时间都会受到您与该网站托管服务器之间的物理距离的影响。CDN 的任务是虚拟地缩短物理距离,目标是提高站点渲染速度和性能。
CDN 是如何工作的?
为了最大限度地减少访问者与您网站服务器之间的距离,CDN 将其内容的缓存版本存储在多个地理位置(也称为接入点或 PoP)。每个 PoP 包含许多缓存服务器,负责将内容交付给附近的访问者。
从本质上讲,CDN 将您的内容一次放在多个地方,为您的用户提供卓越的覆盖范围。例如,当伦敦的某人访问您在美国托管的网站时,它是通过当地的英国 PoP 完成的。这比让访问者的请求和您的响应穿越大西洋的整个宽度并返回要快得多。简而言之,这就是 CDN 的工作方式。当然,正如我们认为我们需要一个完整的指南来解释内容交付网络的内部运作,兔子洞更深。
每一秒都很重要
研究表明,长达一秒的延迟会导致转化率下降 7%、页面浏览量下降 11% 和客户满意度下降 16%。
谁使用 CDN?
几乎每个人。今天,超过一半的流量已经由 CDN 提供服务。这些数字每年都在迅速上升。现实情况是,如果您的业务的任何部分是在线的,那么几乎没有理由不使用 CDN,尤其是当有这么多人免费提供服务时。
然而,即使作为一项免费服务,CDN 也不适合所有人。具体来说,如果您正在运行一个严格本地化的网站,并且您的绝大多数用户与您的主机位于同一区域,那么拥有 CDN 几乎没有什么好处。在这种情况下,使用 CDN 实际上会通过在访问者和已经在附近的服务器之间引入另一个不必要的连接点来降低您网站的性能。
尽管如此,大多数网站倾向于以更大的规模运营,这使得 CDN 的使用成为以下领域的热门选择:
- 广告
- 媒体和娱乐
- 在线游戏
- 电子商务
- 移动的
- 卫生保健
- 高等教育
- 政府
那么 CDN 能为我做什么?
现代 CDN 可以处理大量 IT 任务,帮助您:
- 提高页面加载速度
- 处理高流量负载
- 阻止垃圾邮件发送者、抓取工具和其他恶意机器人
- 无需成本即可本地化覆盖范围
- 减少带宽消耗
- 多台服务器之间的负载均衡
- 保护您的网站免受 DDoS 攻击
- 保护您的应用程序
- 和更多
CDN 构建块
PoP(存在点)
CDN PoP(存在点)是位于战略位置的数据中心,负责与其地理附近的用户进行通信。它们的主要功能是通过使内容更接近网站的访问者来减少往返时间。每个 CDN PoP 通常包含许多缓存服务器。
缓存服务器
缓存服务器负责缓存文件的存储和交付。它们的主要功能是加快网站加载时间并减少带宽消耗。每个 CDN 缓存服务器通常拥有多个存储驱动器和大量 RAM 资源。
固态硬盘/硬盘 + 内存
在 CDN 缓存服务器内部,缓存文件存储在固态硬盘和硬盘驱动器(SSD 和 HDD)或随机存取存储器 (RAM) 中,更常用的文件托管在速度更快的介质上。作为三者中最快的,RAM 通常用于存储最常访问的项目。
开始使用 CDN
要使 CDN 正常工作,它必须是所有传入流量的默认入站网关。为此,您需要修改根域 DNS 配置和子域的配置。对于您的根域,您将更改其 A 记录以指向 CDN 的 IP 范围之一。对于每个子域,修改其 CNAME 记录以指向 CDN 提供的子域地址。在这两种情况下,这都会导致 DNS 将所有访问者路由到您的 CDN,而不是定向到您的原始服务器。
如果这听起来令人困惑,请不要担心。今天的 CDN 供应商提供分步说明来帮助您完成激活阶段。此外,他们还通过支持团队提供帮助。整个过程归结为几次复制和粘贴,通常需要大约五分钟。
为什么 CDN 不是我的网站托管的默认部分?
在理想情况下,CDN 将成为任何网站托管的一个组成部分。然而,当 CDN 在 1990 年代后期首次建立时,它们过于昂贵并且只有最大的组织才能使用。今天情况发生了变化,许多托管服务提供商实际上确实将 CDN 服务作为复选框插件提供。
CDN 的演变
自 90 年代以来,商业 CDN 就已经存在。与任何其他具有数十年历史的技术一样,它们在成为今天强大的应用程序交付平台之前经历了几个演变阶段。CDN 的发展路径是由市场力量塑造的,包括内容消费的新趋势和巨大的连接性进步。后者已通过光纤和其他新的通信技术实现。
总体而言,CDN 的演进可以分为三代,每一代都在其网络架构中引入新的能力、技术和概念。同时,每一代 CDN 服务的价格都呈下降趋势,标志着其向大众市场技术的转变。
1997
第一代
静态 CDN
- 提供的内容静态 HTML 和可下载文件
- 缓存方法原点推送
- 网络拓扑结构疏散
- 议程表现
- 价钱非常贵
- 顾客企业部门
2001
第二代
动态 CDN
- 提供的内容静态和动态内容,包括富媒体
- 缓存方法很多都是原点拉
- 网络拓扑结构合并
- 议程性能和可用性
- 价钱昂贵的
- 顾客业务部门
2010
第三代
多用途 CDN
- 提供的内容静态和动态内容,包括富媒体
- 缓存方法大多数是原点拉动
- 网络拓扑结构高度整合
- 议程安全性、性能和可用性
- 价钱经济实惠
- 顾客任何有网站的人
反向代理
内容交付网络采用反向代理技术。在拓扑方面,这意味着 CDN 部署在后端服务器之前。这个位于您网络边界边缘的位置提供了几个关键优势,超出了 CDN 加速内容交付的先天能力。如今,多用途 CDN 正在利用反向代理拓扑来提供以下类型的解决方案:
网站安全
网络安全就是管理对受保护边界的外部访问,理想情况下阻止所有威胁,甚至在它们踏上您的家门口之前。CDN 部署在您的网络边缘,非常适合充当虚拟的高安全栅栏并防止对您的网站和 Web 应用程序的攻击。边缘位置还使 CDN 成为阻止DDoS 泛滥的理想选择,这需要在您的核心网络基础设施之外进行缓解。
负载均衡
负载平衡就是在服务器前面放置一个“交通警卫”,以避免交通堵塞的方式交替传入请求流。显然,CDN 的反向代理拓扑非常适合这种情况,所有传入流量的默认接收方也是如此。此外,反向代理拓扑还为 CDN 提供了对流量的增强可见性。这使它能够准确地衡量每个后端服务器上的待处理请求的数量,从而实现更有效的负载分配。