1102
policy
resource_error
ai_generated
true
错误:Worker超出内存限制。已用内存:128 MB,内存限制:128 MB
Error: Worker exceeded memory limits. Memory used: 128 MB, Memory limit: 128 MB
ID: policy/cloudflare-worker-memory-limit-exceeded
75%修复率
90%置信度
1证据数
2024-01-10首次发现
版本兼容性
| 版本 | 状态 | 引入 | 弃用 | 备注 |
|---|---|---|---|---|
| Cloudflare Workers runtime 2024-01-01 | active | — | — | — |
| wrangler 3.50.0 | active | — | — | — |
根因分析
Cloudflare Workers每个请求有128 MB内存限制;worker尝试分配超过可用内存,导致终止。
English
Cloudflare Workers have a 128 MB memory limit per request; the worker attempted to allocate more than available, causing termination.
官方文档
https://developers.cloudflare.com/workers/platform/limits/解决方案
-
通过流式处理大响应而不是缓冲来优化内存使用。示例:使用response.body.pipeTo(writable)而不是将整个主体读入内存。
-
将worker拆分为多个较小的worker,处理请求的不同部分,减少每个请求的内存占用。
无效尝试
常见但无效的做法:
-
Increase the memory limit in wrangler.toml
100% 失败
Cloudflare Workers memory limit is fixed at 128 MB per request for all plans; cannot be increased.
-
Enable auto-scaling to use more memory
100% 失败
Workers don't support auto-scaling per request; each request is isolated and limited to 128 MB.