云沙箱按 Sandbox 实际使用的资源和时长计费。开发者在使用 E2B SDK 或 E2B CLI 创建 Sandbox 时,应重点关注 Sandbox 生命周期、资源规格、模板构建频率和外部存储使用方式。
计费方式
云沙箱支持按量付费。按量付费根据 Sandbox 的规格、运行状态和实际使用时长计费,适合开发测试、弹性任务和按需创建的 Agent 执行环境。
详细规则参见按量付费。
主要计费项
云沙箱费用通常由以下几类资源组成:
计算资源:Sandbox 活跃运行时使用的 vCPU 和内存。
磁盘资源:Sandbox 本地磁盘,以及休眠状态下用于保存状态的磁盘占用。
模板构建资源:通过
Template.build()构建自定义模板时消耗的计算资源。外部云资源:使用 NAS、OSS、公网流量等云产品能力时,按对应云产品计费。
规格和配额
创建 Sandbox 时,可以选择模板,并通过 SDK 设置超时时间、环境变量、元数据等参数。实际可用规格和配额受账号、地域和产品配置影响。
生产接入前,建议评估以下指标:
峰值并发 Sandbox 数。
单个 Sandbox 的 CPU、内存和磁盘规格。
平均 Sandbox 存活时间。
单次任务输入、输出文件大小。
模板构建频率和构建耗时。
如果默认配额无法满足业务需求,可通过函数计算控制台或阿里云支持渠道申请提升。
生命周期与成本
Sandbox 创建后会占用资源。任务完成后,应主动调用 sandbox.kill() 释放资源。
const sandbox = await Sandbox.create("code-interpreter-v1", {
apiKey: process.env.E2B_API_KEY,
apiUrl: process.env.E2B_API_URL,
domain: process.env.E2B_DOMAIN,
});
try {
await sandbox.commands.run("python3 -c \"print('hello')\"");
} finally {
await sandbox.kill();
}如果需要保留任务现场,可以使用暂停和恢复能力。暂停、恢复以及不同状态下的计费规则参见按量付费。
成本控制建议
为 Sandbox 设置合理的超时时间,避免长时间空闲。
任务完成后主动终止 Sandbox,不只依赖自动超时。
把常用依赖固化到自定义模板,减少运行时重复安装。
避免在 Sandbox 内反复下载大依赖、大模型或大数据文件。
对后台命令、端口服务和轮询任务设置明确退出条件。
需要长期保存的数据写入 NAS、OSS 等外部存储,不依赖 Sandbox 本地文件系统。