REFERENCE · HTTP

请求生命周期

两个完成点。 response completion 决定客户端何时收到完整响应;lifetime completion 决定请求相关后台工作何时全部结束。waitUntil() 只影响后者。

状态机

ACCEPTED → JS_RUNNING → RESPONSE_PENDING → RESPONSE_SENT → DRAINING → DONE
              │               │                 │
              └ error → 500   └ disconnect      └ waitUntil timeout

Timer

Timer entry 拥有 callback 的 TracedReference、ID、到期时间和 KJ promise。clearTimeout() 必须同时取消 KJ task 和释放 callback。回调运行期间调用 clear 时,清理应幂等。

限额

建议从小值开始:单请求 128 个活跃 timer、30 秒 waitUntil 上限、1 MiB request body、8 MiB response body。超限必须成为可见 JS 异常,不能静默丢任务。