03/Flow Routing

Failure Resilience

Status-code fallback, self-retry, cooldown and node-scope.


Routers answer "which member"; status edges answer "what happens if a member fails". Together they form a resilient chain.

#Status edges

A status edge from a member jumps to another member or router when specific HTTP codes (429, 502, "4xx", "5xx"…) are received. If codes are empty, any failure matches.

#Self-retry & cooldown

max_retries
How many times the same member is retried on a self-loop edge.
retry_delay_sec
In-request wait between attempts.
cooldown_sec
When retries are exhausted, the member@node is marked in Redis for this duration; subsequent requests skip it (circuit breaker).

#node_scope

A status rule can target "any" (any node of the member) or specific nodes. Specificity: a rule that includes the failing node > an "any" rule. This lets you fail over only when a specific node is bad.

502 · retry×3then 502/429
Member A
Member B
Self-retry then a continue edge
A request never becomes an internal 500: if all targets are exhausted, the last upstream error is returned to the client.