Skip to content

Cloudflare Workers vs Pages 区别详解

概述

Cloudflare 提供两个主要的产品用于应用部署:WorkersPages。两者都运行在 Cloudflare 的全球边缘网络上,但定位和使用场景有显著区别。


核心区别对比

对比维度Cloudflare WorkersCloudflare Pages
定位无服务器计算平台全栈应用托管平台
主要用途边缘计算、API、中间件静态网站、JAMstack 应用
代码执行原生支持 JS/TS/Python/Rust通过 Functions 实现动态功能
部署方式Wrangler CLI / 控制台Git 集成 / 直接上传 / C3 CLI
适用场景API、请求修改、数据处理博客、文档站、前端应用
构建流程无(直接部署代码)支持构建命令和输出目录配置
预览部署支持每个 PR 自动生成预览

Cloudflare Workers

是什么?

Workers 是一个无服务器(Serverless)计算平台,允许在 Cloudflare 全球边缘网络上运行代码,无需管理服务器。

核心能力

  • 边缘计算 - 在全球 300+ 节点执行代码,延迟极低
  • 多种语言 - 支持 JavaScript、TypeScript、Python、Rust
  • 无状态/有状态 - 支持 Durable Objects 实现状态管理
  • 定时任务 - 支持 Cron Trigger 定时执行
  • AI 推理 - 通过 Workers AI 运行机器学习模型

典型使用场景

mermaid
graph LR
    A[API 服务] --> B[Workers]
    C[请求拦截/修改] --> B
    D[定时任务] --> B
    E[AI 推理] --> B
    F[中间件/代理] --> B
  1. REST API - 构建无服务器后端接口
  2. 请求修改 - 修改请求/响应头、A/B 测试
  3. 代理转发 - 隐藏真实后端地址
  4. 定时任务 - Cron 定时执行后台任务
  5. AI 应用 - 边缘 AI 推理

部署示例

bash
# 安装 Wrangler CLI
npm install -g wrangler

# 创建项目
npx wrangler init my-worker

# 本地开发
npx wrangler dev

# 部署
npx wrangler deploy

Cloudflare Pages

是什么?

Pages 是一个全栈应用部署平台,专注于前端应用和静态网站的托管,同时支持通过 Functions 实现动态功能。

核心能力

  • Git 集成 - 连接 GitHub/GitLab 自动部署
  • 框架支持 - 原生支持 React、Vue、Next.js、Astro 等
  • Pages Functions - 无服务器函数,类似 Workers
  • 预览部署 - 每个 PR 自动生成预览环境
  • 自定义域名 - 免费 SSL,自动配置

典型使用场景

mermaid
graph LR
    A[静态网站] --> B[Pages]
    C[文档站] --> B
    D[博客] --> B
    E[前端应用] --> B
    F[全栈应用] --> B
  1. 静态网站 - 博客、文档、落地页
  2. 前端框架应用 - React/Vue/Next.js 等
  3. 全栈应用 - 结合 Pages Functions 实现后端逻辑
  4. 文档站 - VitePress、VuePress、Docusaurus 等

部署示例

bash
# 方式一:Git 集成(推荐)
# 1. 在 Cloudflare Dashboard 连接 GitHub 仓库
# 2. 配置构建命令和输出目录
# 3. 每次 Push 自动部署

# 方式二:直接上传
npx wrangler pages deploy dist --project-name=my-site

# 方式三:C3 命令行创建
npm create cloudflare@latest my-site

如何选择?

选择 Workers 的情况

  • ✅ 需要构建 API 接口
  • ✅ 需要修改请求/响应(如添加安全头、A/B 测试)
  • ✅ 需要定时任务(Cron Trigger)
  • ✅ 需要有状态的边缘计算(Durable Objects)
  • ✅ 需要AI 推理(Workers AI)

选择 Pages 的情况

  • ✅ 部署静态网站前端应用
  • ✅ 需要自动部署(连接 Git 仓库)
  • ✅ 需要预览部署(每个 PR 生成预览)
  • ✅ 需要简单的后端逻辑(Pages Functions)
  • ✅ 站点主要是静态内容

两者结合使用

实际上,Workers 和 Pages 可以结合使用

用户请求 → Pages(前端应用)

         → Workers(API 接口)

         → D1/R2/KV(数据存储)

Pages Functions vs Workers

Pages 通过 Functions 提供动态功能,与 Workers 非常相似:

对比Pages FunctionsWorkers
部署随 Pages 一起部署独立部署
路由基于文件路径(/api/hello.js自定义路由配置
适用简单后端逻辑复杂后端服务
限制与 Pages 计划共享独立计费

建议:简单后端逻辑用 Pages Functions,复杂 API 服务用独立 Workers。


定价对比

Workers 定价

计划请求数/天价格
免费100,000$0
付费无限$5/月起步

Pages 定价

计划构建时长/月价格
免费500 次构建$0
付费无限$20/月起步

💡 提示:具体定价请参考 Cloudflare 官方定价页


总结

Workers = 边缘计算引擎(干活的工具)
Pages   = 网站部署平台(展示的舞台)

小型项目/静态站点 → Pages
API 服务/边缘计算  → Workers
全栈项目           → Pages + Workers 结合

参考资源


最后更新: 2026-05-17