为何将 AI 代理基础设施从 GitHub Actions 迁移至 Cloudflare

Computing/Software4분 읽기

TuBrief 편집팀 원본 영상을 바탕으로 AI의 도움을 받아 작성했습니다. 원본 영상이 기준입니다. 원본 영상: GitHub 并非为 AI Agent 而生(所以 Cloudflare 自己造了一个) · Better Stack

在企业环境中,当自主 AI 代理的数量不断增加时,基于 GitHub Actions 的工作流就会触及瓶颈。每当代理调用外部 API 时产生的网络延迟,都会成为制约服务的短板。每次都克隆并推送整个代码库的方式效率低下。通过利用 Cloudflare Artifacts 和 Durable Objects 在边缘网络中管理状态,运营成本可降低 30% 以上。

消除 Git 工作流的瓶颈

代理每次工作时都要重新下载存储库的过程,在大规模并行环境中是致命的。Cloudflare Artifacts 在边缘网络内部处理 Git 协议。通过消除不必要的网络跳数,并使用 Durable Objects 的 SQLite 事务,可以在没有复杂分布式锁的情况下保持一致性。

通过数据映射优化提升处理速度

无需复制整个存储库,只需获取所需的文件块即可。

  1. 将 Cloudflare ArtifactFS 关联到代理环境。
  2. 优先部署执行所需的配置文件和依赖项。
  3. 其余内容通过后台水合(Background Hydration)异步加载。

采用这种方式,在修改特定模块时,可以将初始等待时间缩短 90%。将代理的思考过程和结果存储在同一个原子事务中,是保持系统完整性的方法。

如何将内存占用限制在 128MB 以内

如果通过容器运行数万个代理,内存浪费会非常严重。Cloudflare 的 V8 Isolates 比容器消耗的内存少得多。为了稳定运行,必须将单个 Durable Objects 的内存限制在 128MB 以下。

并发控制设置

  1. 在 wrangler.toml 中添加 durable_objects.concurrency_control 设置。
  2. 将每秒请求数限制在 1,000 以下,以防止过载。
  3. 使用 SqlStorageCursor 将数据流式传输,而不是一次性加载到内存中。

为每个代理分配独立的 SQLite 数据库,数据隔离也将变得更加完善。

将网络延迟降低至 10ms 以下

在传统环境中,代理与外部 Git 服务器之间的 TCP 和 TLS 握手会占用 50ms 到 300ms 的时间。通过 Artifacts 和内部绑定直接通信,可以将此延迟降低到 10ms 水平。同时也摆脱了外部 API 调用限制的问题。

成本优化计算

  1. 开启代理休眠功能,将闲置成本降至 0 元。
  2. 使用 Cloudflare R2 代替昂贵的 GitHub 托管运行器,从而节省外部数据传输费用。
  3. 以 2026 年为准,运行 1,000 个代理时,可将原先 5,000 美元的费用降低至 1,200 美元左右。

为 5 分钟内快速回滚进行数据管理

即使在系统停止运行时,也应运行 PRAGMA integrity_check 以防止数据损坏。通过将 Cloudflare 的 Analytics Engine 与 GraphQL API 联动,实时确认 CPU 时间、内存使用量和读取行数。

将 Grafana 连接为仪表板以可视化每个代理的资源,可以立即发现故障点。当代理出现混乱时,利用 SQLite 时间旅行(Time Travel)功能,可以在 5 分钟内恢复到之前的状态。这是一个将代理重新设计为超越简单辅助工具、能够记忆状态的微服务的过程。

관련 영상

GitHub 并非为 AI Agent 而生(所以 Cloudflare 自己造了一个)

Better Stack6:09

커뮤니티의 다른 글

댓글

로그인하고 댓글을 남겨 보세요.

아직 댓글이 없습니다.