每个做海外站的人,头一年都会在 CDN 上被上一课,有人被 Cloudflare 的免费套餐惯坏了,以为所有加速都是点个“橙云”就完事;有人被 Akamai 的报价吓跑,连邮件都不敢回,今天把 AWS CloudFront 摊开讲:什么场景用它、怎么配、要花多少钱、拿什么 IP 测,以及和 Cloudflare / Fastly / Akamai 比,到底值不值得选。
先说场景,CloudFront 不是万金油,但以下三类场景非常合适,一、你已经有 AWS 资源,对象存在 S3、源站在 ALB,CloudFront 能直接拉通,S3 回源不走公网流量,源站权限用 Origin Access Control 就能藏起来,不用裸奔,二、做软件安装包、高清视频、图片压缩包这类大文件分发,CloudFront 原生支持 Range、自动压缩、边缘断开回源,源站压力小,三、动态 API 加速,用 Cache Policy 把动态路径设为 TTL=0,再用 Lambda@Edge 做 A/B 测试、Header 改写、边缘鉴权,反过来,那种每天 PV 只有几百的展示型小站,别拿 CloudFront 硬扛,那是杀鸡用牛刀。
配置方面,别被控制台吓到,创建 Distribution 时,只需要抓住几个重点,Origin Domain 填你的 S3、ALB 或自定义源站;Cache Behavior 按路径分规则:静态目录 /static/* 用 Managed-CachingOptimized,TTL 可以设长一点,API 路径用 CachingDisabled;Viewer Protocol 选 Redirect HTTP to HTTPS,域名证书用 AWS Certificate Manager,免费,别忘了评估 Origin Shield——它有额外费用,但能多一层边缘缓存,减少回源 90% 以上,压缩选项要打开,如果你主要做欧美用户,Price Class 选 Use Only US, Canada and Europe,直接省掉亚太流量费。

AWS CloudFront 海外加速,别急着上 Cloudflare,先看这个被低估的老实人
价格呢?CloudFront 新账号前 12 个月有免费额度:1TB 流量 + 1000 万次请求,之后北美和欧洲流量大约 $0.085/GB,HTTPS 请求约 $0.01/万次,举例:欧美月流出 500GB、300 万次 HTTPS 请求,流量费 $42.5,请求费 $3,合计 $45.5,如果源站是 S3,S3 到 CloudFront 的数据流量免费,只支付 S3 的 GET 请求费用,每月几毛到几美元,这个价格比 Akamai 低一个数量级,比 Fastly 也便宜大概两成,别嫌贵,Cloudflare 免费版确实不要钱,但你能拿到的东西也确实是“免费级”的。
测试 IP 这块,丑话说在前面:CloudFront 没有固定 IP,边缘节点是动态分配的,别去找什么“独享测试 IP”,那是忽悠,官方会公布 CLOUDFRONT 服务网段,当前常用的包括 224.0.0/14、84.0.0/15、84.0.0/16,你可以从这些网段中取一个具体 IP,用 curl --resolve 强制指定:
curl -I --resolve cdn.example.com:443:13.224.10.1 https://cdn.example.com/
如果响应头里出现 x-cache: Hit from cloudfront,说明节点连通且缓存生效,注意,这些网段会变化,实际生产环境还是用自己的 DNS 分配结果。
说到竞品,Cloudflare 的免费 DNS、免费 WAF 确实强,但免费版对动态内容加速有限,后端连接经常绕道;付费版好一些,可一旦涉及复杂规则,文档和调试体验能把人逼疯,Fastly 的缓存 purge 秒级生效,开发者体验好,但单价偏高,控制台里全是给“高级玩家”准备的微调项,新手很容易懵,Akamai 是巨炮,月流量如果不到几个 PB,拿到的价格和合同复杂度都让人头疼,CloudFront 的定位是“顺手、透明、和 AWS 同构”:按量付费,无最低承诺;缓存失效秒级;有 CloudWatch 日志、成本分配标签、IAM 权限体系,缺点也很明显:控制台功能太多,误配置可能产生意外账单,需要花半小时读文档。
最后说一句:不要因为 Cloudflare 免费就盲目选,你做的是海外生意,不是给 CDN 厂商当用户增长数据,CloudFront 不是最便宜的,也不是最激进的,但它是一台很少掉链子的机器,按上面的思路去配一遍,用测试 IP 看边缘响应,三十分钟你就能判断它适不适合自己。
发表评论