如果你是一人公司(OPC)或独立开发者,你最缺的不是创意,是时间、钱、和运维精力。传统那套——租服务器、配 Nginx、装数据库、买 CDN、操心 DDoS、半夜被告警叫醒——对一个人来说是慢性自杀。
过去两年我把一个真实产品—— 1000usdinchina.com,一个面向外国游客的中国旅行预算 SaaS(4 语种、上百城数据、带 AI 行程助手)—— 完整跑在 Cloudflare 上。今天不讲概念,直接拆它为什么是一人公司的宝藏底座。
先给你一张全景,下面所有东西都在同一张边缘网络、同一个仓库、一条部署命令里:
flowchart TB
user([全球用户 / 爬虫]) --> edge
subgraph CF["☁️ Cloudflare 全球边缘网络(300+ 城市)"]
edge["边缘入口: DNS · SSL · CDN · DDoS 防护(全免费)"]
edge --> pages["Pages: 静态前端 / 预览环境"]
edge --> worker["Workers: 动态后端 / SSR($5/月起)"]
worker --> d1[("D1: 边缘 SQLite")]
worker --> kv[("KV: 会话 / 配置 / 缓存")]
worker --> r2[("R2: 对象存储 · 零出口费")]
worker --> ai["Workers AI: Qwen / Llama 小模型"]
worker --> cache["Cache: 边缘 HTTP 缓存"]
cron["Cron Triggers: 定时任务"] --> worker
end
style CF fill:#fdf6e3,stroke:#d4a017
style ai fill:#eef2fb,stroke:#2860c8一个人,把上面这一整套跑起来,月成本是一杯咖啡。下面逐块拆。
一、先说钱:$5/月,撑起一个真 SaaS
Cloudflare 的定价对小团队近乎"不讲道理"。把"免费"和"$5"两档拆开看:
| 能力 | 档位 | 对一人公司的意义 |
|---|---|---|
| 全球 CDN / DNS / 免费 SSL / DDoS 防护 | 免费 | 别处单买就是月费,这里 0 元 |
| Pages 静态托管(请求数不限)+ 预览环境 | 免费 | 前端 + 每个分支预览,白送 |
| D1 / KV / R2 / Workers AI | 温和免费额度 | 小流量期基本白嫖 |
| Workers(计算 / SSR) | $5/月 | 含每月千万级请求,超出按量、单价极低 |
三个关键点:
- 没有"闲置也烧钱"。Serverless 按调用计费,没流量就几乎不花钱。一人公司同时养三五个小项目,成本依然可控。
- 不会被流量打爆账单。哪怕某天上了 Hacker News,平台有用量护栏,不会一觉醒来收到天价账单。
- 省的不只是钱,是决策成本。你不用在"要不要为这点流量升配"上反复纠结。
对比传统 VPS:最低配 + CDN + 托管数据库 + 对象存储,月成本和心智负担都远不止于此。
二、一套"乐高",覆盖全栈
Cloudflare 真正的杀手锏是:计算、数据、存储、AI、网络全在同一张边缘网络上,互相之间零延迟、统一鉴权、一个 wrangler 命令部署。一个人不用在五个云供应商之间拼胶水、对五份账单。
Workers —— 你的后端 / 渲染层
全球 300+ 城市边缘运行,冷启动近乎为零。可以跑 API、做 SSR(我用 Next.js + OpenNext 把整个站部署成 Worker)。用户请求落到离他最近的节点,天然全球加速。
Pages —— 前端 / 静态站
Git 推送即部署,免费、自带预览 URL。纯静态站、文档、落地页放这里最省。
D1 —— 边缘关系型数据库
基于 SQLite,写真 SQL、有迁移机制。我的 case / 用户行程 / 标签 / 订阅都在 D1。对"需要强一致、需要 join"的业务数据,它是主力。
KV —— 全球键值存储
读极快(边缘就近),最终一致。最适合放 session、配置、热点缓存——我用它存登录会话。
R2 —— 对象存储,**零出口流量费**
兼容 S3 API,但 S3 最贵的"出站流量费"它完全不收。图片、用户上传、备份、生成的文件都丢这里,搬数据不肉疼。
Workers AI —— 边缘直接跑 Qwen
不用租 GPU、不用接第三方 key,边缘直接调 Qwen / Llama 等开源模型(详见下一节)。
Cache / Cron / Durable Objects / Queues
边缘 HTTP 缓存把 TTFB 拉到几十毫秒;Cron 一行配置一个定时 worker(我用它每隔几分钟生成一条新行程);需要锁、队列、实时连接时,再上 Durable Objects / Queues。
一句话:一个人、一个仓库、一条部署命令,就能上线一个有数据库、有缓存、有 AI、有定时任务的完整产品。
那这些块在一次真实请求里怎么协作?看带缓存的请求生命周期:
sequenceDiagram
participant U as 用户与爬虫
participant E as 边缘缓存 (Cache 与 KV)
participant W as Worker
participant D as D1 与 Workers AI
U->>E: 请求页面
alt 缓存命中
E-->>U: 直接返回 (几十毫秒,省计算)
else 未命中
E->>W: 转发
W->>D: 查数据与调 Qwen
D-->>W: 结果
W->>W: 渲染
W-->>E: 响应 (可写回缓存)
E-->>U: 返回
end热路径用缓存挡在计算前面,省 CPU、省钱、还快——这对有 CPU 额度上限 of 边缘运行时尤其关键(见第六节)。
三、把 Qwen 这类小模型"白嫖"进产品
很多独立开发者想加 AI 功能,一看 OpenAI 账单就劝退。Cloudflare 的 Workers AI 换了个玩法:
- 在边缘直接调用开源模型(Qwen 系列、Llama 等),不用自己租 GPU、不用接第三方 API key,模型就在你 Worker 旁边,调用没有跨网络往返。
- 每个账号每天有免费额度(按 "neurons" 计),小流量产品基本白嫖就够用;超出按量、单价低。
1000usdinchina.com 的"AI 行程助手"就是用 Workers AI 上的 Qwen 小模型做的——用户用自然语言说"带爸妈玩 10 天、预算 1000 刀",模型把它结构化成行程参数,再算出真实花费。对一人公司来说,这是几乎零成本把 AI 卖点装进产品的捷径。
flowchart LR
A["用户自然语言: '带爸妈玩 10 天,预算 1000 刀'"] --> B["Worker"]
B --> C["Workers AI (Qwen): 抽取结构化参数"]
C --> D["行程引擎: 城市/天数/人群/档位"]
D --> E["真实成本估算: 读 D1 价格数据"]
E --> F(["生成行程与报价"])
style C fill:#eef2fb,stroke:#2860c8⚠️ 诚实提醒:免费额度是账号级、按天的。如果你 dev 环境拿真模型反复压测,会把当天额度烧光、连带影响线上——这个坑我踩过。开发期尽量 mock,真模型调用留给线上。
四、运维负担趋近于零(一人公司最在乎的)
- 不用管服务器:没有要打补丁的 OS、要重启的进程、要扩容的实例。
- 全球加速 + 安全默认开:用户在哪都快;DDoS、SSL 这些"不出事是应该、一出事是大事"的东西,平台默认兜底。
- 回滚一条命令:线上出问题
wrangler rollback,秒退上一版。 - 预览环境白送:每个分支/部署自带预览 URL,一个人也能"先在 dev 验证再上 prod"。
省下来的不是钱,是你本来要花在运维上的、本就稀缺的注意力。
五、再白嫖一层:GitHub + Actions 当你的免费 CI/CD
Cloudflare 负责"跑",代码托管和自动上线交给 GitHub + GitHub Actions——这俩对一人公司同样接近免费,且和 Cloudflare 是天作之合:
- GitHub:免费私有仓库,代码、Issue、版本全在一处,不用自建 Git 服务器。
- GitHub Actions:免费 CI/CD(公开仓库基本不限量,私有仓库每月有慷慨免费分钟数)。一个
.github/workflows/*.yml就是你的全自动流水线,不用养任何构建服务器。
把 CLOUDFLARE_API_TOKEN 存进 GitHub Secrets,Actions 里一句 wrangler deploy 就把产物推上 Cloudflare。一个人,推一次代码,测试 + 构建 + 部署全自动完成——这在十年前是一个团队 + 一套 Jenkins 才有的待遇,现在 0 运维、近 0 成本。
我那套流水线,每次 git push 全自动跑完,还能"先 dev、验过再 prod",一个人也有灰度的体面:
flowchart TD
push["git push → main"] --> install["装依赖 (pnpm)"]
install --> quality["lint + typecheck"]
quality --> test["单元 + D1 集成 + E2E (Playwright)"]
test --> build["构建 (next build / OpenNext)"]
build --> perf{"Lighthouse 性能门禁"}
perf -->|不达标| fail["❌ 阻断, 不部署"]
perf -->|达标| dev["wrangler deploy → dev worker"]
dev --> verify{"dev 验证 (golden path)"}
verify -->|绿| prod["wrangler deploy → prod"]
verify -->|红| fail
prod --> live(["🌐 全球上线"])
style live fill:#eaf7ef,stroke:#1f7a46
style fail fill:#fdecea,stroke:#b5462f⚠️ 诚实提醒:私有仓库的 Actions 免费分钟数有上限,重 E2E / Lighthouse 很吃分钟数;真跑爆了可以减少触发频率、或挂自托管 runner。但对多数一人公司,免费额度绰绰有余。
六、几个真实的坑(先知道,少踩)
吹归吹,作为真用过的人,我也得把代价讲清楚——不然你上去会骂街:
- 边缘运行时 ≠ Node.js。Workers 跑的是 V8 边缘运行时,
fs/path/child_process这些 Node 专属 API 用不了,得用 Web 标准 API / Web Crypto。迁移老 Node 项目要改。 - KV 是最终一致。它读快,但写完不保证立刻全球可见,别拿它存"必须强一致"的数据(那种放 D1)。
- Workers AI 有每日额度天花板(见第三节),重 AI 的产品要规划用量、做缓存。
- CPU 时间有上限。单请求 CPU 时间有限,重计算 / 每次都重渲染会触发限制——要靠缓存(KV/R2/边缘缓存)把热路径挡在计算之前(就是第二节那张时序图的意义)。
- 有一定厂商绑定。D1、KV、Workers AI 都是 Cloudflare 专有;好处是整合无缝,代价是搬家有成本。早期我认为对一人公司,整合带来的速度 > 锁定的风险,但你心里要有数。
结论:一人公司,就该站在巨人的边缘网络上
一人公司的胜负手是用最少的人力和现金,最快把产品送到用户面前、并扛住增长。把这两层叠起来:
- Cloudflare:$5/月的计算 + 免费的全球网络 + 一站式的数据/存储/缓存/AI;
- GitHub + Actions:免费的代码托管 + 全自动测试构建部署。
合起来,几乎是为"小而全"量身定做的底座。你不需要运维团队,也不需要五个云账单。你需要的是:一个仓库、一条 wrangler deploy、和把省下来的时间花在产品本身。
如果你正打算一个人启动点什么——先去开个 Cloudflare 账号,把 Pages + Workers + D1 跑通一个 Hello World,再用 GitHub Actions 接上自动部署。你会回来谢我。
这篇基于我把 1000usdinchina.com(Next.js + OpenNext 部署到 Workers、D1 存数据、KV 管会话、Workers AI 跑 Qwen、Cron 做定时生成、GitHub Actions 自动上线的多语种 SaaS)完整跑在 Cloudflare 上的经验。想看"这套栈能做出什么样的成品",可以直接去站上点点看。具体某项服务的免费额度与单价以 Cloudflare 官网当前为准。