CDN (Content Delivery Network) 是一种通过分布在全球各地的边缘服务器来分发 Web 内容的机制。从地理位置上离用户最近的服务器提供内容,从而大幅提升页面加载速度。
如果没有 CDN,从纽约访问托管在东京服务器上的网站时,数据需要跨越太平洋传输,物理距离带来的延迟 (时延) 不可避免。使用 CDN 后,缓存在纽约附近边缘服务器上的内容直接提供给用户,延迟大幅降低。Cloudflare 的公开数据显示,使用 CDN 后平均页面加载时间改善 50% 以上的案例并不少见。
对于短链接服务而言,CDN 尤为重要。短链接的重定向处理即使只有几十毫秒的延迟也会影响用户体验,因此需要确保全球任何地方的访问都能快速响应。主流短链接服务都利用 CDN 来最小化重定向的响应时间。
CDN 的主要功能有三个:第一是缓存 (将静态内容存储在边缘服务器上实现高速分发),第二是负载均衡 (将访问分散到多台服务器以减轻源站压力),第三是 DDoS 防护 (在边缘吸收大量请求以保护源站)。
代表性的 CDN 服务包括 Cloudflare、Amazon CloudFront、Akamai、Fastly。Cloudflare 的免费方案也提供基本的 CDN 功能,个人网站或小型服务也能轻松接入。CDN 的配置通常只需修改 DNS 设置即可完成,无需更改应用代码。相关书籍可在 Amazon 上查找。