Hotdry.
web-architecture

个人博客从 Fastly 换到阿里云 ESA:为什么我最终选了免费版

作为个人开发者,我对比了 Fastly 和阿里云 ESA。Fastly 技术很酷,但对于我这种小网站来说,ESA 免费版够用、配置简单、国内访问快。分享一下真实的使用体验。

我的情况

我是个人开发者,有个技术博客,月访问量大概 2-3 万 PV,流量不到 10GB。

之前用的是 GitHub Pages,后来想折腾一下 CDN,就看上了 Fastly(因为 GitHub 用的就是它)。试用了一个月后,最终还是换成了阿里云 ESA 的免费版。

这篇文章记录一下我的真实体验。

为什么一开始想试 Fastly

1. GitHub 用的就是它

我的博客本来就托管在 GitHub Pages,看到背后用的是 Fastly,就想:"既然 GitHub 信任它,那应该不错"。

后来发现:GitHub 用 Fastly 是因为他们用户遍布全球,我的博客 90% 访客都在国内...

2. Compute@Edge 听起来很酷

看技术文章时,Fastly 的边缘计算功能(Compute@Edge)很吸引人:

  • 基于 WebAssembly
  • 可以用 Rust/Go/JavaScript
  • 在边缘节点跑代码

但现实是:我的小博客根本用不上这些,我只需要简单的 CDN 缓存。

3. 觉得自己很 "Geek"

说实话,当时就是想装个 X,用个 "技术含量高" 的方案。

结果发现配置 VCL 太复杂,而且账单看不懂(虽然有免费试用额度)。

Fastly 的实际体验

优点

1. 海外访问确实快

用 Fastly 时,我在 Twitter 上分享博客链接,海外朋友反馈加载很快。美国、欧洲的节点覆盖很好。

2. 配置更新快

改完 VCL 配置后,秒级生效。这点确实比很多 CDN 强。

3. 实时统计很详细

Fastly 的 Dashboard 可以看到实时流量、命中率、错误率,数据很详细。

缺点(劝退点)

1. 国内访问慢

我用拨测工具测了一下:

  • 北京访问:TTFB 300-400ms
  • 上海访问:TTFB 350-450ms

因为 Fastly 在国内没有节点,所有请求都要绕到新加坡或日本,延迟高。

我的博客 90% 访客在国内,这个延迟体验不好。

2. VCL 配置太复杂

Fastly 的配置是用 VCL(Varnish Configuration Language)写的,类似编程语言。

我只是想配个简单的缓存规则,结果要写几十行代码:

sub vcl_recv {
  if (req.url ~ "^/static/") {
    return(lookup);
  }
}

sub vcl_fetch {
  if (beresp.status == 200) {
    set beresp.ttl = 86400s;
  }
}

对于我这种只想快速配好 CDN 的人来说,这太折腾了

3. 免费额度有限

Fastly 有试用额度,但正式使用后:

  • 流量费:$0.12/GB 起(大客户可以议价,小用户就这价)
  • 请求费也要收

我算了一下,如果我的博客流量涨到 50GB / 月,一个月要 $6-8。

虽然不贵,但对于个人博客来说,能免费为什么要付费?

4. 文档全是英文

这不是缺点,但对于英文不太好的开发者来说,看文档确实累。

换成阿里云 ESA 的体验

为什么选 ESA

  1. 有免费版:每月 50GB 流量,对我的小博客完全够用
  2. 国内节点:备案后可以用国内节点,延迟低
  3. 控制台配置:不用写代码,点点鼠标就行
  4. 中文文档:看起来不费劲

免费版包含什么

  • 流量:50GB / 月
  • 请求数:不限
  • 基础安全:DDoS 防护、WAF、CC 防护都有
  • 边缘脚本:EdgeScript 可以用(虽然我用不上)
  • HTTPS 证书:免费自动签发

完全免费,没有隐藏收费

配置有多简单

我从 Fastly 迁移到 ESA,整个过程 30 分钟:

1. 添加网站(5 分钟)

控制台 → 添加站点 → 输入域名 → 选择 CNAME 接入

2. 配置缓存规则(10 分钟)

不用写 VCL,直接在界面上配:

  • 静态文件(.css/.js/.jpg)→ 缓存 1 年
  • HTML 文件 → 缓存 10 分钟
  • API 路径 → 不缓存

全是可视化操作,选选下拉框就完成了。

3. 切换 CNAME(5 分钟)

把域名的 CNAME 记录改成 ESA 提供的地址,等 DNS 生效就行。

4. 验证(10 分钟)

测试一下博客能不能正常访问,看看缓存有没有生效。

就这么简单,不需要写一行代码。

性能对比(我自己测的)

我用 ping.chinaz.com 测了一下国内访问速度:

Fastly

  • 北京:380ms
  • 上海:420ms
  • 广州:350ms
  • 成都:460ms

ESA(备案后)

  • 北京:18ms
  • 上海:15ms
  • 广州:20ms
  • 成都:25ms

延迟降低了 90% 以上,访客体感明显

虽然我博客流量小,但自己访问时也能感觉到快了很多。

下面是实测的国内多地访问延迟对比图:

ESA 国内多地访问测速对比

唯一的缺点

需要备案

如果你想用 ESA 的国内节点,域名必须有 ICP 备案。

备案流程:

  1. 在阿里云提交备案申请
  2. 填资料、拍照、等审核
  3. 通常 7-15 天下来

这是国内的政策要求,所有国内 CDN 都要备案。

如果你不想备案,可以只用 ESA 的海外节点,但延迟会比国内节点高。

我的选择逻辑

选 Fastly 的理由

如果你是:

  • 海外用户为主的网站 / 服务
  • 英文很好,看文档没压力
  • 愿意折腾 VCL 配置
  • 有预算,不在乎每月几美元的费用

那 Fastly 是个好选择,技术确实先进。

选 ESA 的理由(我的情况)

如果你是:

  • 国内用户为主的网站 / 博客
  • 个人开发者,流量不大(50GB / 月以内)
  • 想省钱,能免费就免费
  • 希望简单,不想写配置代码
  • 域名已备案愿意备案

那 ESA 免费版完全够用。

常见问题

Q:ESA 免费版有什么限制?

A:主要限制是流量 50GB / 月。超过后可以:

  1. 升级到付费版(按流量计费)
  2. 继续用免费版,超出部分停止服务(下个月自动恢复)

我的博客每月 5-8GB,免费版够用。

Q:免费版的功能会阉割吗?

A:不会。免费版包含:

  • CDN 加速
  • DDoS 防护
  • WAF 防护
  • HTTPS 证书
  • 边缘脚本(EdgeScript)

唯一的区别就是流量限额,功能上没区别。

Q:配置真的很简单吗?

A:真的很简单。我之前没用过阿里云,第一次配 ESA 也只花了 30 分钟。

控制台是中文的,每个选项都有说明,不需要看太多文档。

Q:海外访问怎么样?

A:ESA 也有海外节点(亚太、欧美都有),但覆盖不如 Fastly 全面。

我测了一下:

  • 美国:80-100ms(比 Fastly 慢一点)
  • 日本:30-40ms(差不多)
  • 新加坡:40-50ms(差不多)

如果你的用户 90% 在国内,海外慢一点也无所谓。

我的建议

作为个人开发者,我的经验是:

不要被 "技术先进" 迷惑

Fastly 的 Compute@Edge 确实很酷,但你的小网站 / 博客根本用不上。

就像买车,法拉利性能很强,但你每天只是上下班代步,买个丰田卡罗拉就够了。

选最适合自己的

我的选择标准:

  1. 够用吗? → ESA 免费版 50GB 流量够我用
  2. 快吗? → 国内访问延迟从 400ms 降到 20ms
  3. 简单吗? → 控制台配置,30 分钟搞定
  4. 免费吗? → 完全免费

四个问题都是 "Yes",那就选它。

如果流量涨上去了怎么办?

到时候再说。如果我的博客月流量涨到 100GB,说明有一定影响力了,那时候付费升级也值得。

但现在流量小,先用免费的。

怎么领取 ESA 免费版

  1. 打开阿里云官网:https://www.aliyun.com
  2. 搜索 "ESA" 或 "边缘安全加速"
  3. 点击 "免费试用"
  4. 按提示开通即可

或者直接用这个链接http://s.tb.cn/e6.0Fu67m

总结

作为个人开发者,我从 Fastly 换到 ESA 的核心原因:

  1. 免费(50GB / 月够用)
  2. (国内延迟低 90%)
  3. 简单(不用写 VCL)

Fastly 是个好产品,但不适合我这种国内用户为主的小网站。

技术选型没有绝对的对错,只有适不适合自己的场景。

如果你也是个人开发者,流量不大,用户主要在国内,不妨试试 ESA 免费版。


相关链接

说明:本文是我的个人真实体验,不是广告。我只是一个用免费版的个人开发者,分享一下使用感受。

查看归档