跳过主要内容
全部文章
工程

为什么用 Cloudflare 成本更低

拆解 Cloudflare 的边缘基础设施如何降低 Web 应用的运营成本。

Cloudflare 的思路不一样。它不是对每一层分别收费,而是把网络本身作为产品,并以固定费用或无额外费用覆盖 Web 应用所需的大部分能力。

Cloudflare D1:边缘侧 Serverless SQLite

D1 是 Cloudflare 的 serverless SQLite。它支持全球复制,并按存储和查询计费。对典型 SaaS 应用来说,免费额度足以覆盖早期生产环境。随着增长,价格按真实使用量扩展,而不是按预留容量收费。

Drizzle ORM 架在 D1 之上,因此 schema migration workflow 和 query API 都是标准做法。你使用的是带全球分发能力的 SQLite。

Cloudflare R2:没有出口流量费的存储

Amazon S3 会对传出的数据收费。对于媒体内容较多的应用,出口流量费用可能远超存储费用。

Cloudflare R2 是 S3-compatible storage,但没有出口流量费。你只为存储和请求付费,而不是为离开网络的字节付费。如果你的应用要提供大量用户内容,这一项成本基本会消失。

Cloudflare KV:轻量级 Server Cache

很多 SaaS 应用会在重复的 provider calls 上花钱,因为每次页面加载都在问同样的问题:这个邮箱是否已订阅、公开列表是什么、远程 API 刚刚返回了什么。

Cloudflare KV 可以把这些低风险读取放到轻量级边缘缓存里。在 TanStarter 中,它是可选的缓存层,不是数据库、认证系统或支付 provider 的替代品。

Cloudflare Email Service:收信和发信

Cloudflare Email Service 同时覆盖入站邮件路由和出站事务邮件发送。

Email Routing 处理入站邮件。配置域名、添加 MX records 后,邮件会通过 Cloudflare 转发到你的收件箱。

Email Sending 用于事务邮件,例如订单确认、密码重置和摘要邮件。你可以搭配 React Email + Resend 做丰富模板,也可以在更简单的场景中使用 Cloudflare 原生 SMTP relay。

Cloudflare Workers:应用平台

传统 hosting 通常按 compute instance 收费。一台每月 $20 的 Node.js VPS 大部分时间都处于空闲,但成本和满负载运行时一样。

Cloudflare Workers 在 V8 isolate 中运行代码。冷启动以毫秒计。免费计划每天允许 100,000 次请求。付费计划每月 $5 可获得 1,000 万次请求,不会为空闲时间付费。

TanStack Start 模板会编译成单个约 2 MB 的 bundle,完全适合免费套餐。对 beta 或早期发布的产品来说,hosting 成本几乎为零。

Cloudflare Workers AI:边缘侧 AI

Workers AI 在 Cloudflare 已经运营的全球 200+ 数据中心硬件上运行推理。你按请求付费,而不是按计算分钟付费。一次文本摘要调用只需要几分之一美分,图像生成通常也只是几美分。

对于 TanStack Start 应用,你可以接入 AI 功能,而不需要单独准备 AI 预算。REST API 的结构也和其他 server functions 保持一致。

一个 Dashboard,一张账单

Cloudflare 将 compute(Workers)、storage(R2)、database(D1)、AI(Workers AI)、email 和 global routing 汇总到一个账号里。一个登录入口、一张发票、一个出问题时排查的位置。

实际成本对比

下面是早期生产环境中一个典型 SaaS 应用的粗略对比:

成本项传统方案Cloudflare
Compute$20-$50/月(VPS 或 container)$0-$5/月(Workers)
Database$15-$50/月(managed DB)$0-$5/月(D1)
Storage + egress$10-$30/月(S3 + transfer)$0-$5/月(R2)
AI inference$20-$100/月(GPU API)$0-$10/月(Workers AI)
Email$10-$30/月(SendGrid/Mailgun)$0(Email Routing)
CDN$10-$50/月(CloudFront/Fastly)已包含
Total$65-$310/月$0-$30/月

具体数字取决于使用量,但比例相当稳定。Cloudflare 的模型让成本和真实消费对齐,而不是和预留容量绑定。对于从 0 扩展到数万用户的项目,账单会更接近实际使用量,而不是按阶梯突然跳升。