Cloudflare Workers 允许您在网络边缘运行 JavaScript(或 Rust/Wasm)代码,靠近最终用户。通过消除传统服务器,可以减少延迟、提高性能并简化架构。到 2025 年,该平台将提供 KV Store、Durable Objects、Workers Sites 以及与 Cloudflare Pages 的本机集成等高级功能。
为什么要使用 Workers?
- 最小延迟,代码在全球数据中心运行,通常<10毫秒。
- 自动扩展,无需配置实例。
- 按使用付费模式,根据请求和 CPU 时间计费。
- 与 Cloudflare 集成服务、防火墙、CDN、Argo、图像等。
- 支持多种语言、JavaScript、TypeScript、Rust、C、Go,通过 WebAssembly。
Worker 的基本架构
- 脚本,函数8接收9并返回10。
- 路由,在 11 中定义或通过 Workers Routes 定义。
- 可选存储、KV 或持久状态的持久对象。
- 部署、12 或 CI/CD 集成。
请求流程
请求的路径是直接的:用户通过 HTTPS 访问 Cloudflare Edge,它在最近的数据中心运行 Worker 脚本。 Worker 读取和写入 KV 存储,在需要一致状态时与持久对象进行通信,并将响应返回给用户。同时,Edge 会尽可能提供已由 CDN 缓存的内容,从而避免不必要的重新执行。
使用 Wrangler 配置项目
0
13 的最小示例:
1
基本脚本(3行)
2
此代码响应“Cloudflare Workers 你好!”任何要求。
路径路由
在 14 中添加特定域的路由:
3
现在,Worker 只会触发与该模式匹配的 URL。
使用 KV 存储(2 行示例)
4
KV 提供毫秒延迟和全局高可用性。
持久对象,每个键的状态一致(示例 3 行)
5
持久对象在实例之间保持同步状态,非常适合计数器、聊天室等。
安全和最佳实践
- 输入验证,绝不信任URL参数;使用15并消毒。
- CPU限制,Workers每个请求的时间限制为50ms;避免长循环。
- 使用环境变量,将秘密存储在16而不是硬编码中。
- CORS,为公共 API 配置适当的标头。
- 速率限制,与 Cloudflare 防火墙规则相结合以防止滥用。
本地测试
6
该命令启动模拟 Edge 环境的本地服务器。
通过 CI/CD 部署(GitHub Actions 示例),5 行
7
可观察性
- 日志,17实时显示日志。
- 指标,Cloudflare Analytics 显示延迟、错误、流量。
- 错误跟踪,使用18并将详细信息发送给 Sentry 或 Workers KV。
快速清单
- 安装 Wrangler CLI。
- 使用 account_id 和 KV/DO 配置 19 。
- 编写脚本20 处理程序。
- 设置路线或使用21。
- 使用 22 进行本地测试。
- 通过 23 配置机密。
- 使用 24 或 CI 进行部署。
- 监控日志 (25)。
- 应用防火墙规则以确保安全。
结论
Cloudflare Workers 提供超快速边缘计算,允许您创建无服务器 API、静态网站、图像转换和业务逻辑。通过遵循安全最佳实践、使用 KV 或持久对象进行状态以及与 CI/CD 管道集成,您可以以可预测的成本和高性能在全球范围内扩展应用程序。
你已经开发出Worker了吗?在评论中分享您的技巧和挑战!
另请阅读
- [WebAssembly 处于边缘:为什么快速启动和隔离很重要27
- [生产中的 Cloudflare Workers:hello world 之后发生了什么变化28
- [2025 年使用 AWS Lambda 和 Cloudflare Workers 开发无服务器应用程序29
- [2025年现代Web发展:趋势、工具和创新策略30
- [Cloudflare Durable Objects:边缘的一致状态 - 真正改变的是什么31
- [Cloudflare Workers 与 Pages:选择之前最重要的区别32
