默认值与限制
本页列出调用方会遇到的默认值与限制,并给出解释各项的页面。表中「固定」表示部署无法修改这个值,「部署方」表示部署方可以修改。
Workspace 默认值
默认值取决于创建 Workspace 的方式:
| 设置 | kibo | Go SDK 与原生 API | E2B SDK |
|---|---|---|---|
| CPU | 1 个 CPU | 必填 | 1 个 CPU,由部署方设置 |
| 内存 | 256 MiB | 必填 | 1 GiB,由部署方设置 |
| 可写层 | 由 node 的存储配置决定 | 由 node 的存储配置决定 | 5 GiB,由部署方设置 |
| Volume | 挂在 /data 的新 Volume,随 Workspace 删除 | 挂在 /data 的新 Volume,随 Workspace 删除 | 与前两者相同,除非传了 volumeMounts |
| 网络 | 不能访问 | 不能访问 | 公网,除非传 allowInternetAccess: false |
| 到期时间 | 无 | 无 | JS SDK 默认 5 分钟,到期删除。不带 timeout 的请求为 1 小时,由部署方设置。见到期时间 |
见创建 Workspace 与资源。
Workspace 资源
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| 内存 | 整数 MiB,至少 128 MiB | 固定 | Template 与资源 |
| CPU 与内存的上限 | node 能放置的量 | 部署方 | node |
| 可写层 | 整数 MiB,其中 1 MiB 留给下一次启动 | 固定 | Template 与资源 |
| Firecracker 后端的 guest 重启 | 10 分钟内 3 次,下一次会让 Workspace 进入 FAILED | 固定 | guest 自己重启 |
文件
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| 单次上传 | 1 GiB | 固定 | 大小与时限 |
| 单个下载响应 | 1 GiB。kibo、Go SDK 与 E2B 网关分段读取更大的文件 | 固定 | 传输文件内容 |
| 传输速度 | 每次传输 64 MiB/s | 固定 | 大小与时限 |
| 没有数据流动的传输 | kibo 与 Go SDK 在 1 分钟后结束。Go SDK 可以用 WithStallTimeout 修改 | 调用方 | 会话提供什么 |
在 /v1/files 上停止发送或读取的调用方 | node 在 5 秒后中止请求 | 固定 | 传输文件内容 |
ListDir | 深度 64,一次列出 10,000 个条目 | 固定 | 目录与元数据 |
| 监视流 | 每个 Workspace 64 条 | 固定 | 持续掌握目录内容 |
| 监视事件 | 每条流每秒 1000 个 | 固定 | 持续掌握目录内容 |
进程
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| 进程每个通道保留的输出 | 最近 1 MiB | 固定 | 丢失的输出 |
| guest 保留的输出 | 16 MiB 与 guest 内存的 1/16 中较小的一个,至少 1 MiB | 固定 | 丢失的输出 |
kibo 与 E2B 网关的重连时间 | 30 秒 | 固定 | 断线续传 |
网络
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
allow 与 deny 条目 | 两个列表合计 256 条 | 固定 | 网络策略 |
| 策略里的 Resolver | 1 个 | 固定 | 在策略中引用 Resolver |
| 经 Resolver 的单次 DNS 查询 | 4 秒 | 固定 | DNS 与 Resolver |
服务与公开 URL
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| 打开的服务连接 | 每个 Workspace 128 条,每个 node 1024 条 | 固定 | 服务与端口 |
kibo 端口转发的连接 | 同时 32 条 | 固定 | 本机端口转发 |
| 服务连接的单条消息 | 32 KiB | 固定 | 协议 |
| 公开 URL 的有效期 | 创建时必填,最长 24 小时 | 固定 | 公开 URL |
| E2B 应用端口上的空闲连接 | 15 分钟后关闭 | 固定 | 应用端口 |
凭证
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| 会话凭证 | 默认 5 分钟,最长 15 分钟 | 固定 | 凭证有效期 |
| 绑定执行代的凭证 | 最长 1 小时,不超过 Workspace 的到期时间 | 固定 | 凭证有效期 |
| Operator 证书 | 30 天,在最后 10 天续期 | 固定 | 连接 ctrl |
| 注册密钥 | 一次性,默认 1 小时,范围是 1 分钟到 24 小时 | 调用方,在范围内 | kibo enrollment create |
API 请求
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| 请求消息 | 4 MiB。ArtifactPublicationService 为 16 MiB,EnrollmentService 为 64 KiB | 固定 | 协议 |
| 幂等键 | 1 到 128 字节。kibo 在发送前检查;用 Go SDK 时调用 kibotos.ValidateCommandID | 固定 | 幂等键 |
| 停止或删除的等待 | 1 分钟,之后返回可重试的 UNAVAILABLE,命令继续执行 | 固定 | 命令的返回时机 |
| 运行中 Workspace 改网络策略的等待 | 1 分钟,之后返回可重试的错误,Workspace 处于 UNKNOWN,直到 node 再次上报 | 固定 | 命令的返回时机 |
| 列表分页大小 | 100 | 固定 | 分页 |
labels 与 annotations
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| label 名称与 label 值 | 各 63 个字符,label 前缀最长 253 个字符 | 固定 | labels 与 annotations |
| 资源上全部 labels | 65536 字节 | 固定 | metadata 与选项的大小 |
| 资源上全部 annotations | 262144 字节 | 固定 | metadata 与选项的大小 |
导出与恢复
桌面
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
一个 PerformActions 请求里的操作 | 64 个 | 固定 | 用 API |
| 一个请求里输入的全部文本 | 4096 字节 | 固定 | 用 API |
| 等待操作 | 每个 2 秒,一个请求合计 10 秒 | 固定 | 用 API |
| 一个输入文本操作 | 1024 字节 | 固定 | 键盘与文本输入 |
| 一次写剪贴板 | 64 KiB | 固定 | 键盘与文本输入 |
E2B 网关
| 限制 | 值 | 设置方 | 详见 |
|---|---|---|---|
| 创建请求的请求体 | 1 MiB | 固定 | 创建 sandbox |
| 等待 sandbox 运行 | 90 秒,之后返回 502,启动仍可能完成 | 固定 | 创建 sandbox |
Idempotency-Key | 256 字节 | 固定 | 用 Idempotency-Key 重试 |
| 单次请求最长的 timeout | 默认不限,KIBOTOS_E2B_MAX_TIMEOUT 可以设置上限 | 部署方 | timeout 的取值 |
| 一个 sandbox 里的独立 Volume | 1 个 | 固定 | Volume |