e2b-dev/runtime

The runtime behind every E2B stack: Cloud, Enterprise, and your own machine.

解决的问题

E2B Runtime 为 AI 代理提供安全、隔离的环境来执行不受信任的代码。它通过快照恢复消除了传统虚拟机的缓慢启动时间,让代理拥有自己的专用 Linux 机器,可以几乎即时地暂停、恢复和分叉。

运作方式

系统使用 Firecracker 微型虚拟机,从对象存储中预先启动的模板启动。它不是从头启动内核,而是恢复虚拟机快照。内存页面通过 userfaultfd 延迟加载,根文件系统使用写时复制覆盖层,确保只取得必要的数据。

在架构上,它将控制平面(API)与数据平面(编排器和边缘路由器)分离,因此沙盒流量绕过 API 以降低延迟。在每个虚拟机内部,一个名为 envd 的专门代理提供 REST 和 Connect RPC API 来管理进程、文件系统和端口转发。

适用对象

  • 代理开发者:需要精确控制执行环境,并能在本地和生产环境中运行相同运行时。
  • 平台团队:需要在自己的云账户中执行代理,以避免“黑盒子”基础设施。
  • 基础设施工程师:对高性能虚拟机快照、延迟内存恢复和 Firecracker 编排感兴趣。

亮点

  • 硬件隔离沙盒:每个会话都获得一个 Firecracker 微型虚拟机,具有自己的网络命名空间和出口防火墙。
  • 即时暂停与恢复:沙盒可以暂停(与模板比对并存储)并在流量到达时透明地恢复。
  • 沙盒分叉:能够检查点一个实时沙盒,并从该状态启动最多一百个新实例。
  • 自定义模板:从 Docker 镜像和构建步骤创建环境,并具有缓存层。
  • 集成可观测性:完整 OpenTelemetry 导出生命周期事件和主机指标到 ClickHouse。

相关

  • 项目
  • 项目
  • 项目
  • 项目