Cloudflare Workers
是什么
Cloudflare Workers 让你在 Cloudflare 的全球网络——超过 300 个城市——上运行 JavaScript、TypeScript 或 WebAssembly,而不是局限于单个区域。每个请求都在一个轻量的 V8 isolate 中运行,其启动耗时远低于一毫秒,因此基本不存在冷启动。你编写一个 fetch 处理函数,用一条命令部署,你的代码便自动在靠近每位用户的位置运行。
优势
- 得益于 V8 isolate 而非完整容器,冷启动接近于零。
- 默认全球化——你的代码一次性部署到每个 Cloudflare 节点。
- 慷慨的免费额度;按请求和 CPU 时间付费,而非按空闲时间。
- 对 D1、R2、KV、Queues、Durable Objects 和 Workers AI 提供一流的绑定支持。
- 单个
wranglerCLI 即可处理开发、密钥和部署。
取舍
- 该运行时不是 Node.js——许多依赖原生模块或文件系统的 npm 包无法使用,不过 Node 兼容性正在改善。
- 单请求的 CPU 时间和内存有上限,因此不适合繁重计算。
- 没有本地磁盘或长期存活的进程内状态;你需要改用绑定。
- 分布式执行使得跨区域的单步调试更加困难。
何时使用
当你需要一个快速、全球分布的 API、边缘中间件、鉴权检查、重定向、webhook 处理器,或一个依赖 Cloudflare 存储和 AI 绑定的全栈后端时,可以选用 Workers。
与 vibe coding 的契合度
Workers 是 AI 主导编码最友好的部署目标之一:项目就是一个配置文件加一个处理函数,agent 可以从头到尾完成脚手架搭建、服务绑定和部署。请提前告诉 agent 你的目标是 Workers(而非 Node),这样它才会遵守运行时限制,并使用绑定而非诸如 fs 之类的东西。下面的示例将一个 Worker 接入一个 KV namespace。
# wrangler.toml
name = "my-worker"
main = "src/index.ts"
compatibility_date = "2026-06-01"
[[kv_namespaces]]
binding = "CACHE"
id = "your-kv-namespace-id"
npx wrangler dev # 本地边缘运行时
npx wrangler deploy # 发布到全球网络