作者:二叉树树 AcoFork · 2026-10-05
AI 撰写:本文由 ChatGPT 根据作者提供的迁移经历与 2026-10-05 的实测记录整理。
今天偶然摸了一下阿里云 ESA,发现之前把网站全部押在 EdgeOne 上,有点太草率了。
这次尝试中,ESA 的静态托管明显更快。把登录接口的 Cloudflare Worker 回源也套上 ESA 后,最让我满意的是长时间等待明显减少了。于是,网站的架构又改了一次:静态站点和登录接口交给 ESA,绘图、LLM 这些国内服务器上的后端继续走 EdgeOne。
为什么登录接口要套一层国内 CDN?
之前收到过一些小伙伴的反馈:在某些网络环境下,他们只能连上国内的备案域名,却连不上我们原来的登录接口。
账号后端由于历史遗留问题,一直运行在 Cloudflare Worker 上。普通登录原来使用的域名是 i.2x.nz,直接访问这条链路,对于这些用户来说并不可靠。
当时的处理方式,是用国内 CDN 给它套一层入口。用户请求 p-i.acofork.com,CDN 再去请求 Cloudflare Worker。这样可以保留原来的账号后端,又让普通登录有一个国内可访问的入口。
这并不意味着把账号系统搬回了国内服务器。账号逻辑仍在 Worker 上,改变的是用户到后端之间的访问路径。OAuth 仍保留 i.2x.nz 及现有回调地址,避免为了改善普通登录,反而把第三方登录弄坏。
昨天的 522,让我重新看了一遍这条链路
昨天又有小伙伴反馈回源超时,出现了 522。今天试了一下用 ESA 套同一个账号后端,又顺便测了静态站点,发现这次不应该继续凭印象选 CDN。
测试从我的电脑和绘图机分别发起,固定请求域名与 TLS 的 SNI,连接指定 CDN 节点,保持证书校验,每次建立新连接。没有修改生产数据,也没有触发验证码发送或实际登录。
静态站点测首页 HTML 和入口 JS;登录接口测匿名读取账号信息与状态。匿名接口返回完整的 401 JSON 是正常结果,关注的是它能否及时、完整地回来。
静态托管:这次 ESA 的优势很直接
下面是完整下载耗时的中位数,单位为毫秒:
测试位置
资源
EdgeOne
ESA
我的电脑
首页 HTML
269.2
92.9
我的电脑
入口 JS
320.5
133.6
绘图机
首页 HTML
192.9
80.6
绘图机
入口 JS
265.3
120.6
两处测试都指向同一个结果:在本站当前的托管链路下,ESA 更快。
不过,这不是同一份构建产物的严格 A/B。两边当时的部署版本不同,测试也只覆盖两个发起位置。因此,这些数字足够支持我这次迁移的决定,不能拿来证明 ESA 在所有地区、所有网站上都胜过 EdgeOne;它们也不是浏览器完整页面启动时间。
登录回源:我更在意少等五秒
登录接口的结果有一点反直觉:如果只看中位数,EdgeOne 其实更快。
以我的电脑请求 /api/account/me 为例,两边各测 12 次:EdgeOne 首字节耗时中位数约 460 毫秒,ESA 约 670 毫秒。但是,EdgeOne 最慢的一次完整响应用了约 5.8 秒,ESA 最慢约 725 毫秒。
另一个账号状态接口也出现了类似情况。汇总两个位置、两个接口的请求,EdgeOne 有 47/48 次完整返回,ESA 是 48/48。EdgeOne 那次失败在接近 10 秒时才收到状态码,正文只收到一部分,随后达到测试的超时上限。
本次探测没有直接捕捉到用户反馈的 522,但确实看到了长等待和不完整响应。这还不足以判定具体故障原因,也不是服务商整体可用率的统计。
对登录来说,我宁愿通常多等一两百毫秒,也不想用户偶尔盯着加载圈等五六秒。所以,把这条回源链路换到 ESA,主要是选择这轮测试里更稳定的表现,而不是宣称每个请求都更快。
国内后端继续用 EdgeOne
绘图后端已经在国内服务器上,LLM 后端也是。这种回源和跨境请求 Worker 不是同一回事。
绘图 API 的只读探测中,我的电脑访问健康检查接口,EdgeOne 中位首字节耗时约 85 毫秒,ESA 约 94 毫秒;点数配置接口分别约 75 毫秒和 88 毫秒。绘图机上的结果也没有显示出值得全面切换的优势。
这些只是接口链路测试,不代表模型生成速度。但至少说明:不能因为 ESA 静态托管更快,就把所有后端一起搬过去。
最后的分工
目前主要入口这样分配:
业务
用户访问的域名
CDN 与后端
静态站点
www.acofork.com
ESA 静态托管
普通登录及账号接口
p-i.acofork.com
ESA → Cloudflare Worker
OAuth
i.2x.nz
保留原有授权与回调链路
AI 绘图 API
api-ai.acofork.com
EdgeOne → 国内绘图服务器
LLM API
api-llm.acofork.com
EdgeOne → 国内 LLM 服务器
这次调整的是站点静态托管和普通登录入口,博客内容仓等独立资源服务不在这张迁移清单里。
以前想的是选一个平台,把所有东西都放进去,省心。今天测完才发现,同一家 CDN 在静态托管、跨境回源、国内 API 上的表现可以很不一样。
以后还是按链路选:该换的换,表现不错的继续用。尤其是登录这种入口,用户能稳定进去,比一张漂亮的平均延迟表重要得多。