Ironflow Multi-Node Cluster

Ironflow Multi-Node Cluster An architecture diagram generated by Archify. Load balancer · no session affinity · Architecture component Load balancer no session affinity Pull workers · claim from any node · Architecture component Pull workers claim from any node Node 1 · ironflow serve --node-id node-1 · Ironflow nodes — stateless, interchangeable Node 1 ironflow serve --node-id node-1 Node 2 · ironflow serve --node-id node-2 · Ironflow nodes — stateless, interchangeable Node 2 ironflow serve --node-id node-2 Node 3 · ironflow serve --node-id node-3 · Ironflow nodes — stateless, interchangeable Node 3 ironflow serve --node-id node-3 STEPS stream · created, no traffic (ADR 0037) · External NATS JetStream cluster STEPS stream created, no traffic (ADR 0037) EVENTS stream · ingest + resume subjects · External NATS JetStream cluster EVENTS stream ingest + resume subjects KV SYS_cron_triggers · fired-slot history · External NATS JetStream cluster KV SYS_cron_triggers fired-slot history PostgreSQL · runs, steps, entities, RBAC · PostgreSQL — shared state and dispatch · required for a cluster PostgreSQL runs, steps, entities, RBAC required for a cluster dispatch_queue · lane counter + fenced leases · PostgreSQL — shared state and dispatch dispatch_queue lane counter + fenced leases HTTP / gRPC, any node long-poll GET /workers/{id}/jobs nothing published today publish + consume ironflow.*.*.events.> record fired-slot history run state + atomic slot admission claim FOR UPDATE SKIP LOCKED Ironflow nodes — stateless, interchangeable External NATS JetStream cluster PostgreSQL — shared state and dispatch Legend Backend Database Message bus External