CloudFront 内容分发网络

Amazon CloudFront

把网站内容复制到全球各地的机房,用户从最近的机房取,既快又省,还能顺手挡攻击。

网络与边缘出现时间 · 2008按实际出网流量与请求次数计费,用量越大单价越低,另有缓存刷新等附加费用。CDN边缘缓存静态加速全球分发
看官方文档

01 它是干嘛的

CloudFront 是 AWS 的第一款 CDN:把网页、图片、视频等静态内容缓存到遍布全球的边缘节点,让用户就近获取,只有没缓存的内容才回源站。它和 S3、EC2 等自家服务天然打通,是 AWS 上几乎每个对外网站都会用到的加速层。

02 为什么会有它

访客离服务器越远,打开网页就越慢

在没有 CDN 的年代,网站通常只有一台服务器。如果它在美国,那么亚洲、欧洲的访客每打开一个页面,都要跨越半个地球往返很多次。网页里一张图是一次请求,一个页面几十次请求,来回一算就是好几秒,用户早就关掉走人了。

另一个难题是峰值。你按平时的流量买了机器,某天内容火了,流量涨了十倍,源站一下子被打满;为了这种偶发的高峰去买十倍的机器,又意味着全年大部分时间都在浪费钱。

CDN 的思路很像商业世界里早就存在的做法:既然货要在各地卖,与其让每个顾客都飞到总仓提货,不如在各地开分仓,提前把货铺过去。分仓就是边缘节点,铺货就是缓存。CloudFront 在 2008 年把这套机制做成了「点几下就能开通」的云服务,从此加速和安全都成了配置项,而不是一个需要自建的庞大工程。

03 它怎么工作

CloudFront 的机制是「就近接入 + 缓存命中 + 回源穿透」:让用户连上离他最近的节点,能直接给的内容就直接给,不能给的才替用户回源站取,取回来顺手存在本地给下一个人用。

一次请求如何被 CDN 加速① 就近接入 · 10-30ms② 未命中则回源③ 回填本地缓存Anycast:同一个 IP,各地都有用户北京就近边缘节点命中缓存直接返回①源站你自己的服务器其他区域节点同一份内容的其他副本用户永远只连最近的节点,只有「回源」那一段是长距离。就近链路(快)流动:数据正在传输虚线:辅助 / 非实时路径核心节点
注意「用户只连最近的节点」与「节点替用户回源」这两条不同的线:只有回源那一段是长距离,用户到节点始终很短,这就是加速的全部秘密。

一次访问是怎么被就近满足的:缓存命中与回源

  1. 1
    ① 创建一个分发

    在控制台指定内容的来源(如 S3 桶或你自己的服务器),CloudFront 会给一个专属域名。

  2. 2
    ② 把域名解析指向它

    把网站的访问地址交给 CloudFront,此后所有访客的第一站都先到它,这是加速生效的前提。

  3. 3
    ③ 就近接入边缘节点

    系统会自动把访客的请求送到地理与网络上都最近的节点,用户并不需要知道连的是哪台机器。

  4. 4
    ④ 命中缓存直接返回

    节点上已经有这份内容且未过期,就直接返回给用户,响应时间通常只有几十毫秒,源站毫无压力。

  5. 5
    ⑤ 未命中则回源并留下副本

    节点替用户去源站把内容取回来,一边交给用户、一边按规则留在本地缓存,下一个用户就直接命中了。

04 谁在用它

官网与博客提速

把页面和图片挂上 CDN,全球访客打开速度从数秒降到一秒以内,源站压力也大幅下降。

电商大促抗峰值

商品图与活动页缓存在边缘,大部分流量根本不落到源站,服务器不必为峰值扩容十倍。

视频与软件下载

大文件通过遍布全球的节点分发,用户下载更快,源站的带宽成本也明显降低。

跨境访问优化

面向多个国家与地区的业务,用同一张网络统一接入,不必逐地采购带宽与机房。

静态网站托管

前端的页面、脚本、图片放在对象存储上,由 CloudFront 分发,无需自建服务器。

05 怎么用

不必写代码,配置几项即可上线;关键是把缓存规则想清楚,别把不该缓存的内容缓存出去。

  1. 01在控制台创建分发,选择内容来源:静态资源可选 S3 桶,动态内容填自己的服务器地址。
  2. 02配置缓存策略:静态目录设长有效期,带登录信息的接口路径设为不缓存。
  3. 03把网站域名解析指向 CloudFront 给的地址,并申请免费的 HTTPS 证书。
  4. 04如需从私有对象存储取内容,配置好访问授权,不要为了省事把整个桶设为公开。
  5. 05内容更新时按路径发起缓存刷新,或用带版本号的新文件名让它自然失效。
  6. 06开启日志与用量监控,观察命中率、流量与常见回源路径,据此继续优化。

避坑提示

  • !带用户身份信息的接口千万不能缓存,否则可能把甲的页面返回给乙,属于严重的数据泄露。
  • !缓存刷新是要收费的,别指望频繁刷新兜底;高频变更的内容用新文件名更省钱也更可靠。
  • !一定要确认源站只接受 CloudFront 过来的请求,否则别人可以绕过加速层直连源站,加速与防护都白做。

06 关键概念

边缘节点
分布在各地的小机房,只负责缓存与转发,因此离用户近、响应快。
回源
节点上没有缓存内容时,替用户原路去问源站要,这个过程叫回源。
缓存命中率
一百次请求里有多少次不用回源。命中率越高,源站越轻松、用户越快。
缓存有效期
缓存内容多久算过期。设得越长越省回源,但内容更新越慢。
缓存刷新
主动作废某个节点上的旧内容,让它重新回源取最新版。

07 容易混淆的对比

Cloudflare CDN同样提供全球加速与防护,免费额度大,与自家域名解析深度结合。
Akamai老牌 CDN 巨头,企业级能力强、覆盖广,价格与实施门槛也更高。
图软件图鉴

纯静态站点,无后端、无追踪。内容为中文原创撰写,用于帮助非技术读者理解主流软件产品。

关于本站

全部内容在构建时生成
产品名称与商标归各自公司所有

© 2026 软件图鉴Nuxt 4 · Vue 3 · Tailwind 4 · 纯静态