计费与资源限制
SeaCloud Sandbox 的使用量围绕运行时资源、模板/构建资源和存储策略计量。准确商业价格、免费额度和公开计费示例尚未在本 MVP 文档中发布。
| 维度 | 计量方式 | 说明 |
|---|---|---|
| 沙箱运行时 | CPU、内存和运行时长 | 生命周期 timeout 限制沙箱可存活时间。 |
| 模板构建 | 构建 CPU/内存和构建时长 | 重复依赖安装应沉淀到模板中。 |
| 模板存储 | 已保存的自定义模板镜像 | 具体 tpl-... 镜像可能跨版本保留。 |
| 持久工作区存储 | 存储类型和保留数据量 | 取决于 nfs、block、object 或环境相关挂载。 |
| 网络流量 | 入站/出站与公网端口路由 | 产品价格和硬限制待发布。 |
默认运行时护栏
Section titled “默认运行时护栏”以下是沙箱架构文档中的当前平台默认值。不同产品套餐可能通过可信 Gateway 权益层覆盖。
| 限制 | 默认值 |
|---|---|
| 单用户 held 沙箱 | 20 |
单用户 running + starting 沙箱 | 10 |
单用户 starting 沙箱 | 5 |
| 单用户每日创建沙箱 | 100 |
| 单项目 held 沙箱 | 200 |
单项目 running + starting 沙箱 | 100 |
单项目 starting 沙箱 | 50 |
| 单项目每日创建沙箱 | 1000 |
| 最大连续运行时间 | 86400s |
默认资源护栏
Section titled “默认资源护栏”| 资源 | 默认上限 |
|---|---|
| Sandbox CPU | 8 |
| Sandbox memory | 64Gi |
| Sandbox storage | 200Gi |
| 单用户自定义模板 | 50 |
| 单用户并发构建 | 3 |
| Template CPU | 8 |
| Template memory | 16384MiB |
| Template storage | 200GiB |
| 单个构建上下文归档 | 100MiB |
| 单模板构建上下文存储 | 1GiB |
| 单用户构建上下文存储 | 5GiB |
| 构建任务 active deadline | 3600s |
公开客户端不应发送或依赖内部 X-Sandbox-Limit-* Header。Hermes 解析套餐与权益后,将清洗过的限制转发给 Atlas 和 Sandbox Builder 执行。
查询当前沙箱限额
Section titled “查询当前沙箱限额”GET /api/v1/usage/limitsX-API-Key: <SEACLOUD_API_KEY>响应会返回用户和项目维度的配额使用情况:
{ "resource": "sandboxes", "unlimited": false, "user": { "usage": { "held": 2, "running": 1, "starting": 0, "dailyCreates": 12 }, "limits": { "held": { "limit": 20, "used": 2, "remaining": 18, "enforced": true }, "running": { "limit": 10, "used": 1, "remaining": 9, "enforced": true } } }, "runtime": { "maxRuntimeSeconds": 86400 }}查询模板与构建限额
Section titled “查询模板与构建限额”GET /api/v1/usage/template-limitsX-API-Key: <SEACLOUD_API_KEY>该接口返回自定义模板数量、并发构建数量,以及 maxTemplateCPU、maxTemplateMemoryMB、maxTemplateStorageGB 等资源上限。
限额字段说明
Section titled “限额字段说明”| 字段 | 含义 |
|---|---|
held | 未删除且未处于销毁中的沙箱。 |
running | 运行中加启动中的沙箱,对齐创建/启动限额。 |
starting | new、warming、warm、creating 等启动阶段沙箱。 |
dailyCreates | 自然日创建数量,UTC 零点重置。 |
enforced | false 表示可见但当前不强制执行。 |
unlimited | 可信 Gateway 权益绕过商业沙箱限额。 |
maxRuntimeSeconds | 平台为当前调用方返回的最大生命周期时长。 |
创建/启动请求可能返回 429,并带有 scope、resource、metric、used、limit、remaining、usageEndpoint 等详情。重试前先查询返回的限额接口。
{ "code": 429, "message": "sandbox limit exceeded", "details": { "reason": "usage_limit", "scope": "project", "resource": "sandboxes", "metric": "dailyCreates", "used": 1001, "limit": 1000, "remaining": 0, "usageEndpoint": "/api/v1/usage/limits" }}