Rejecting

No healthy targets: when the load balancer has nowhere to send traffic

A load balancer only sends traffic to targets that pass their health checks. When none pass, it has nowhere to send requests and answers 503 itself.

What causes it

This usually follows a cascade: one target fails, its traffic moves to the others, they overload and fail too. Or all targets share a single dependency — a zone, a database, a bad deploy — that took them down together.

How to recognise it

Error messages you will see

ErrorSeen in
503 Service UnavailableUsers, Router, Server, Database, Cache, Queue and 215 more

How to fix it

Reproduce it in the simulator

Open the simulator, build a small architecture and use Fault injection in the inspector, or push traffic past a component’s capacity.

Open the simulator

Learn more

Part of the guide Load balancing and capacity planning.

Related failure modes