边缘计算概览
Workers 运行时与 Serverless 模型。
边缘计算概览
这一课你将能做到
- 用一句话向同事解释什么是边缘计算、它和传统中心机房的本质区别
- 说清楚 Cloudflare Workers 与传统服务器(VPS / 容器 / Serverless 函数)的差异,并能判断什么场景该用 Workers
- 理解 V8 Isolate 模型为什么能让 Workers 做到毫秒级冷启动
为什么要学
你写完一个接口,部署到自己买的服务器上,用户在北京访问很快,但纽约用户要等 300ms 以上——因为物理距离摆在那里,光速也救不了。
人话:边缘计算就是把你的代码部署到离用户最近的机房。Cloudflare 在全球 300+ 个城市有数据中心,你的 Worker 代码会被复制到所有这些节点上,用户请求进来时,由地理上最近的节点处理。
对前端工程师尤其重要:本站前端是 Next.js,传统做法是部署到一个中心机房或 Vercel。但当用户遍布全球时,仅靠 CDN 加速静态资源是不够的——动态接口也需要「跑在边缘」。Cloudflare Workers 就是让你把动态逻辑(鉴权、改写、聚合、A/B 测试)放到离用户 50ms 以内的地方。
先建立图像
传统架构:
[北京用户] ── 30ms ──> [上海机房] <── 250ms ── [纽约用户]
│
[数据库]
边缘架构:
[北京用户] ── 5ms ──> [Cloudflare 北京节点] ─┐
├──> [源站/数据库(必要时回源)]
[纽约用户] ── 8ms ──> [Cloudflare 纽约节点] ─┘
Workers vs 其他方案的对比:
| 维度 | VPS / 容器 | AWS Lambda | Cloudflare Workers |
|---|---|---|---|
| 运行位置 | 固定机房 | 单 Region | 全球 300+ PoP |
| 冷启动 | 常驻 | 100ms - 数秒 | < 5ms(几乎为 0) |
| 计费模型 | 包月/按小时 | 请求 + 时长 | 请求次数 + CPU 时间 |
| 运行时 | Linux 全功能 | Linux 容器 | V8 Isolate(类浏览器) |
| 长连接 | 支持 | 受限 | 支持 WebSocket(DO) |
跟着做
步骤 1:注册并安装 Wrangler
到 https://dash.cloudflare.com 注册账号(免费套餐足够学习)。然后:
npm install -g wrangler
wrangler --version
wrangler login
wrangler login 会打开浏览器完成 OAuth 授权。
步骤 2:创建第一个 Worker
npm create cloudflare@latest my-first-worker -- --type hello-world --ts true
cd my-first-worker
选择「Hello World」模板 + TypeScript。生成后的 src/index.ts 大致如下:
export default {
async fetch(request: Request, env: Env, ctx: ExecutionContext): Promise<Response> {
return new Response('Hello from the Edge!', {
headers: { 'content-type': 'text/plain;charset=utf-8' },
});
},
} satisfies ExportedHandler<Env>;