Rearchitecting the Workflows control plane for the agentic era
Bài tóm tắt Cloudflare 2026 3. Quy mô lớn Độ khó: Khó
Cloudflare · 2026 · 3. Quy mô lớn · Độ khó: Khó — bài gốc
Bài của nhà cung cấp về sản phẩm của chính họ; con số giới hạn là giới hạn sản phẩm, không phải đo tải.
Bối cảnh
- Workflows (engine durable execution chạy trên chính nền tảng Workers của Cloudflare) được thiết kế cho workflow do người kích hoạt (đăng ký, đặt hàng): mỗi người một instance, người không bấm nhanh được. Thực tế dần chuyển sang workflow do agent tạo ở tốc độ máy; workflow còn được dùng làm vỏ bền giữ agent sống, một phiên agent có thể sinh hàng chục workflow.
- V1: mỗi instance có một Durable Object (DO) Engine chạy step, retry, sleep; mỗi tài khoản có một DO Account làm sổ đăng ký và điều phối mọi workflow, mọi instance. Mọi thao tác tạo, cập nhật, liệt kê đều đi qua DO đó, nên khách tạo hàng nghìn instance mỗi phút làm nó quá tải; giới hạn 4.500 instance đồng thời, 100 instance/giây là trần cứng. V1 còn có thể xếp hàng một instance mà Engine của nó chưa tồn tại.
Thay đổi chính
- Nguyên tắc V2: Engine là nguồn sự thật duy nhất về sự tồn tại của instance; vòng đời và kiểm tra sống phải scale ngang theo từng workflow, rải nhiều region; DO Account chỉ giữ metadata tối thiểu và có số request đồng thời bất biến.
- SousChef: "phó tướng" của Account, giữ metadata và vòng đời cho một phần instance; instance mới được gán ngẫu nhiên cho một SousChef.
- Gatekeeper: cho thuê "slot" đồng thời (suy ra từ giới hạn concurrency) cho các SousChef. SousChef nói chuyện với Account theo chu kỳ mỗi giây, gom mọi yêu cầu slot vào một lời gọi RPC, nên tốc độ tạo instance không bao giờ đè được Account; không được slot thì xếp hàng.
- Đường tạo instance: kiểm phiên bản control plane, dùng thông tin workflow đã cache ở location đó (thiếu mới hỏi Account), chỉ ghi metadata cần thiết vào chính Engine; việc báo cho control plane chạy nền, kèm một alarm của DO (at-least-once, tự retry) đặt ngay trên đường nóng để bảo đảm instance vẫn khởi động nếu tác vụ nền chết. Mọi thao tác trên instance chỉ một bước mạng (đi thẳng tới Engine); liệt kê nhanh và nhất quán với phân trang cursor.
- Giới hạn mới: 50.000 instance đồng thời (từ 4.500), 300 instance/giây mỗi tài khoản (từ 100), 2 triệu instance xếp hàng mỗi workflow (từ 1 triệu); giới hạn giờ là cấu hình nâng được, không phải trần kiến trúc.
- Di chuyển không downtime: hàng triệu instance, hàng nghìn khách. Request tạo mới chuyển sang SousChef mới (tạo khi có request đầu tiên); DO Account cũ tự biến thành một SousChef (giữ nguyên metadata instance của nó); Account mới được dựng với metadata tương ứng. DO cũ tắt dần khi hết thời hạn giữ instance.
Bài học cho SWE
- Một singleton điều phối theo tài khoản là điểm nóng khi khách hàng chuyển từ tốc độ người sang tốc độ máy.
- Bảo vệ thành phần trung tâm bằng cách giới hạn số lời gọi tới nó (gom theo chu kỳ), không chỉ giới hạn tải tổng.
- Việc đưa ra khỏi đường nóng vẫn cần một cơ chế bảo đảm chạy (alarm at-least-once).
- Migrate bằng cách cho thành phần cũ đóng vai một thành phần của kiến trúc mới, thay vì chép dữ liệu đi.
Liên quan
- Anthropic 2025 (agent chạy lâu, cần tiếp tục sau lỗi) · Inngest 2023 · Render 2026
- Hot partition và thundering herd · Batching và khấu hao round-trip · Migration không downtime
#Durable execution#Workflows#Durable Objects#Control plane#Singleton bottleneck#SousChef#Gatekeeper#Concurrency slot leasing#Batch mỗi giây#Alarm at-least-once#Source of truth#Agent-triggered workload#Live migration
Được nhắc tới trong
Công ty (1)