Noderax Docs
Architecture

Realtime And HA Data Flow

Trace the HA runtime path for websocket transport, workspace fanout, Redis pubsub bridging, and immediate event emission.

Realtime And HA Data Flow

Realtime correctness in Noderax depends on more than a working websocket handshake.

Installed runtime topology

In the HA runtime, websocket sessions may connect to either api-a or api-b.

nginx -> websocket proxy and route selection
api-a
api-b
Redis pubsub bridge
metrics cache patching
workspace-scoped event consumers

Required delivery properties

For live UX to work:

  • the connected socket must join the correct workspace-scoped rooms
  • emitted events must target those rooms, not only node-level rooms
  • cross-instance Redis bridging must forward events between API instances
  • events that drive operator perception must emit immediately instead of sitting behind a slow generic outbox path

End-to-end delivery path

The operator’s browser authenticates and opens the Socket.IO transport through nginx.

The socket terminates on one API instance and joins workspace-scoped rooms.

Agents emit metrics, install progress, task changes, or node status into the control plane.

The emitting API instance sends the event immediately and republishes it over Redis so the other API instance can deliver it too.

The web client receives the event and patches the relevant query cache or reactive UI state.

Practical consequence

If node install progress or live metrics appear frozen in HA mode, the root cause is usually one of these architectural legs, not the dashboard widget itself.

On this page