跳转到内容

Workers

场景处理方式搭配能力
文档站、官网、博客静态优先,Worker 只做少量动态接口。静态资产层 + 明确的动态入口
评论、表单、第三方回调、小接口Worker 接口。Workers + D1 / KV / Turnstile
鉴权、代理、接口网关Worker 网关。Workers + WAF / 限流
文件上传下载Worker 只做权限和签名。Workers + R2
房间、会话、协作状态Worker 只做入口。Workers + Durable Objects
邮件、导入、重试、后处理放到后台异步处理。Workers + Queues / Workflows
服务端渲染、重搜索、AI 前处理单独估 CPU。CPU 指标 + Workers Paid
爬取、总结、通知、导出串联入队后处理。Workers 入队 + Queues / Workflows / Containers

动态请求稳定接近 Free 限制时,再考虑升级。典型信号是公开接口、评论、搜索代理或服务端渲染已经有人持续使用。

CPU 经常达到限制也要单独看,尤其是解析大请求、服务端渲染、加密、AI 前处理和批量数据处理。生产问题需要更长日志留存、请求追踪日志或外部日志平台时,Workers Paid 也会更合适。

D1、KV、Queues、Durable Objects 成为主要依赖后,这些产品的免费层也会一起决定是否升级到 Workers Paid。更多定时任务、Worker 数量、外部调用或更大包体,属于工程配额升级。

静态页面和前端资源交给静态资产层 / Pages,免费不限量,也更适合缓存。Worker 负责路由、鉴权和轻接口。评论、订单、业务表放 D1;公开配置、缓存、索引放 KV;图片、附件、导出包放 R2。房间、会话、限流器这类单实体强一致状态放 Durable Objects。慢任务、通知、重试放 Queues / Workflows,不绑在一次请求生命周期里。

ctx.waitUntil() 适合返回响应后的短尾任务,例如日志、缓存刷新、轻通知。不要在请求里串太多外部 API:本地可能正常,上线后外部 API 一慢,整条请求就会被拖住。

用户提交后应尽快返回:校验输入、写任务记录、入队,然后返回任务状态。邮件、爬取、AI 总结、文件解析、通知发送放到队列或工作流里慢慢处理。真正重计算交给 Containers 或外部计算服务。