这篇只讨论独立开发者常见的部署账单:一个前端、一个 API、一个后台任务、一个数据库或对象存储入口。测试环境口径是 2026 年 5 月 24 日查看官方 pricing,不含促销、抵扣、企业合同和第三方托管折扣。
把结论压成一句话:低流量产品不要为了省 $5 提前买 VPS;当平台账单开始接近一个小型服务器月费的 5-10 倍,或者运行模型已经不适合 serverless,再考虑迁移。
成本线先看哪张表?
| 月账单线 | 默认选择 | 触发条件 | 迁移动作 |
|---|---|---|---|
| $0-$5 | Cloudflare Workers Free / Render Free / Vercel Hobby | 落地页、Webhook、轻 API、测试项目 | 先上线,不为未来复杂度买单 |
| $5-$20 | Cloudflare Workers Paid / 小型 VPS / Fly.io 小规格 Machine | 需要自定义域名、稳定构建、少量动态接口 | 记录请求量、带宽、CPU 时间 |
| $20-$40 | Vercel Pro / Render Starter-Standard / Fly.io 双 Machine | 需要团队协作、托管部署、常驻服务 | 把数据库和对象存储拆出来 |
| $40-$80 | Fly.io / Render 多服务 / 中等 VPS | SSR、队列、Cron、WebSocket、区域延迟开始重要 | 做可回滚迁移,不要一次搬全站 |
| $80+ | VPS / 多 VPS / 混合架构 | 平台超额费持续增长,或需要 root 与系统依赖 | 把入口层、应用层、数据层分开 |
这张表不是说 VPS 一定便宜。DigitalOcean Basic Droplet 的 512 MiB 规格是 $4/月,1 GiB 是 $6/月,但它只给你虚拟机。Vercel、Render、Fly.io、Cloudflare Workers 卖的是部署、TLS、日志、自动扩缩、边缘网络、团队权限和少维护。
李辰给 indie 项目做上线工具链时,最容易低估的是“半夜修服务器”的成本。一个 $4 VPS 只要每月花你 2 小时处理补丁、磁盘、Nginx、证书或日志,它就不再是 $4。
Vercel 的限制在哪里?
Vercel 适合 Next.js、React 前端、营销站、文档站、轻量 SaaS Dashboard 和需要预览环境的团队。官方价格页显示,Pro 是 $20/月起,包含 $20 usage credit;Pro 档 Edge Requests 每月含 10M,Fast Data Transfer 每月含 1TB,超出后 Edge Requests 从 $2/1M 起,Fast Data Transfer 从 $0.15/GB 起。
Vercel 的成本线通常不是一开始的 $20,而是“每个新功能都变成一个计费维度”。图片优化、边缘请求、函数执行、数据传输、WAF、日志保留,都会把账单从一个固定订阅变成用量账单。
迁出 Vercel 的信号很清楚:
| 信号 | 说明 | 下一站 |
|---|---|---|
| Pro 账单连续两个月超过 $40 | 已经不只是订阅费 | 先排查缓存和图片优化,再看 Fly.io/Render |
| Function 接近时长上限 | Node.js/Python Fluid Compute 下 Pro 最高 800s | 后台任务搬到队列或常驻服务 |
| 需要自定义系统依赖 | 例如 Playwright、ffmpeg、大型二进制 | Render Docker / Fly.io / VPS |
| 数据库离函数太远 | SSR 每次都等数据库 | 迁数据库区域,或换同区域部署 |
如果你的产品核心是前端转化页,Vercel 很难被 VPS 替代。VPS 能省账单,但会丢掉预览部署、边缘缓存、自动 TLS、Git 集成和团队审阅体验。
Cloudflare Workers 什么时候最省?
Cloudflare Workers 的优势是入口层:API 代理、Webhook、A/B 路由、边缘缓存、轻量 BFF、表单提交、Stripe Webhook 前置校验。官方 Workers Paid 是 $5/月起,包含 10M 请求/月和 30M CPU ms/月,额外请求 $0.30/1M,额外 CPU $0.02/1M CPU ms,且 Workers pricing 页写明无额外 egress 或吞吐带宽收费。
这意味着一个读多写少、逻辑轻、能缓存的 API,Workers 会非常便宜。问题出在运行时限制:Workers Free 单请求 CPU 10 ms,Paid HTTP 请求 CPU 最高 5 分钟,内存是 128 MB;如果代码需要大量 Node 原生模块、本地文件系统、长时间 CPU 运算或浏览器自动化,它不是 VPS 的替代品。
Workers 的迁移限制可以按错误类型判断:
| 现象 | 常见原因 | 处理 |
|---|---|---|
Worker exceeded resource limits | CPU 或内存超限 | 拆成队列、流式处理或换常驻服务 |
| 大文件处理失败 | 内存模型不适合全量 buffer | 改用 R2 流式读写,或搬到容器/VPS |
| Node 包无法运行 | runtime API 不兼容 | 找 edge-compatible 包,或换 Vercel Node/Render |
| 数据库延迟高 | 数据库区域离 Worker 入口远 | 用 D1/Hyperdrive,或把应用迁到同区域 |
Workers 最适合作为“第一层”。当你发现它开始承载业务状态、长任务和复杂依赖时,说明它已经从入口层变成应用层,迁移讨论才真正开始。
Fly.io 和 Render 谁更适合常驻服务?
Fly.io 更像开发者可控的分布式小 VM。官方 pricing 页给出的一个入门示例是 shared-cpu-1x 512MB 约 $3.99/月,不同 region 会有差异;Volumes 是 $0.15/GB/月,专用 IPv4 是 $2/月。Fly Machines 支持 autostop/autostart,停止或挂起时不按 CPU/RAM 计费,但 rootfs、volume 等资源仍可能产生费用。
Render 更像 Heroku 后的现代 PaaS。官方 pricing 页显示 Web Services 有 Free、Starter $7/月、Standard $25/月、Pro $85/月等规格;Free web service 闲置 15 分钟会 spin down,下次请求唤醒约 1 分钟。Render 的好处是 Postgres、Key Value、Cron、日志、Dashboard 和 Docker 部署组合得更完整。
| 维度 | Fly.io | Render |
|---|---|---|
| 最像什么 | 可自动启停的轻量 VM | 托管 PaaS |
| 入门成本 | 小规格 Machine 可低于 $10/月 | Starter $7/月,Standard $25/月 |
| 数据持久化 | Volume $0.15/GB/月 | Persistent Disk $0.25/GB/月 |
| 区域控制 | 强,适合多 region | 更偏平台托管体验 |
| 冷启动 | autostop 后有启动成本 | Free 闲置 15 分钟后约 1 分钟唤醒 |
| 适合 | Docker、WebSocket、常驻进程、区域延迟 | Web 服务、后台 worker、Postgres、少运维 |
我的默认建议是:一人项目想要少管机器,Render 更顺;已经懂 Docker、想控制区域、需要把应用放到用户更近的位置,Fly.io 更灵活。
VPS 的真实成本怎么拆?
VPS 的账单最容易被低估,因为官方价格只显示机器。以 DigitalOcean 为例,512 MiB Basic Droplet 是 $4/月,1 GiB 是 $6/月,额外 outbound transfer 是 $0.01/GiB;Droplet powered off 仍会计费,因为资源还被保留。这个模型简单,但维护责任全部回到你身上。
VPS 的成本要拆成四格:
| 成本项 | 例子 | 是否出现在云厂商首页价 |
|---|---|---|
| 机器 | 1 vCPU、512 MiB、10 GiB SSD | 出现 |
| 带宽和存储 | 超额 transfer、snapshot、backup、volume | 部分出现 |
| 运维时间 | SSH、升级、Nginx、证书、日志、告警 | 不出现 |
| 故障风险 | 磁盘满、内存泄漏、端口暴露、备份失败 | 不出现 |
VPS 适合三类项目:已经有 Linux 运维经验;需要 root、daemon、systemd、Docker Compose、自定义网络;账单已经明显超过托管平台,且迁移后不会损失太多开发效率。
不适合 VPS 的项目也很明确:一个人刚验证需求、频繁改前端、每周都靠 preview URL 给客户看、没有监控和备份习惯。此时 VPS 便宜,但会把产品开发时间换成基础设施时间。
迁移限制怎么判断?
不要只看“哪个平台便宜”。迁移限制应该同时看账单、运行形态、故障半径和可回滚性。
| 当前平台 | 迁移触发线 | 迁移目标 | 先搬什么 |
|---|---|---|---|
| Vercel | Pro 超额费持续增长,且动态请求多 | Fly.io / Render / VPS | 后台 API,不动静态前端 |
| Workers | CPU、内存、Node 兼容性挡住功能 | Render / Fly.io | 长任务和重依赖 |
| Render | Standard/Pro 多服务账单接近 $80 | VPS / Fly.io | Worker 和内部 API |
| Fly.io | 多 region 和 volume 管理变复杂 | Render / VPS / 专门数据库 | 数据库和持久化层 |
| VPS | 运维时间拖慢产品迭代 | Render / Vercel / Workers | 前端和入口层 |
迁移前先做 4 件事:把环境变量列出来;把数据库连接改成配置项;让日志能在新旧平台同时看;准备一个 DNS 回滚窗口。没有这些准备,迁移省下的 $20 很容易被一次事故吃掉。
跨平台部署还会卡在 GitHub Actions、Cloudflare Dashboard、Vercel/Render/Fly Dashboard 登录、CLI 拉取镜像和 DNS 验证这些小环节。团队多人维护海外服务时,可以把 CI/CD、DNS、支付后台操作放在同一套访问规范里,用海外服务跑 GitHub Actions / Cloudflare 的稳定线路承载关键后台操作,避免临时换环境导致发布窗口被打断。
不覆盖什么
这里没有比较 AWS Lambda、Google Cloud Run、Railway、Netlify、Kubernetes 和托管数据库细项。它们都能成为正确答案,但会把维度扩大到 IAM、VPC、企业合规、冷启动策略和团队权限。
也没有纳入促销、返利或限时折扣。价格只按官方页面比对,实际账单还会受地区、税费、用量、账户计划和企业合同影响。
最后,本文没有假设你已经有生产监控。无论选 Vercel、Workers、Fly.io、Render 还是 VPS,至少要有错误日志、账单提醒、数据库备份和一个能回滚的部署方式。