- Updated: February 24, 2026
- 6 min read
Load Balancer Health Checks: Preventing Traffic to Dead Backends
Client‑side and server‑side load balancer health checks differ in who performs the probe, how quickly a failure is detected, and where the routing intelligence lives.

1. Introduction
In modern micro‑service environments, a single unresponsive backend can cascade into a user‑facing outage. Health checks are the safety net that tells a load balancer whether a server is alive and ready to accept traffic. Yet the effectiveness of that safety net hinges on where the check is executed. This article unpacks the two dominant models—client‑side and server‑side health checks—so IT architects and DevOps engineers can make data‑driven decisions that keep traffic flowing.
2. What Are Load Balancer Health Checks?
At its core, a health check is a lightweight request (often HTTP / TCP) sent to a backend instance to verify three things:
- Network reachability (is the port open?)
- Application readiness (does
/healthreturn 200?) - Performance thresholds (response time < X ms)
When a check fails repeatedly, the instance is marked unhealthy and removed from the rotation. The timing, frequency, and ownership of these checks create the two distinct approaches discussed below.
3. Client‑Side vs Server‑Side Approaches
3.1 Server‑Side Load Balancing
In the server‑side model, a dedicated proxy (HAProxy, NGINX, AWS ALB, etc.) sits between clients and the backend pool. The proxy owns the health‑checking loop and makes routing decisions centrally.
Typical configuration:
interval: 5s
timeout: 2s
rise: 2
fall: 3
This means a hard failure may take up to 5 s × 3 = 15 s to be detected, during which traffic can still hit the broken instance.
3.2 Client‑Side Load Balancing
Client‑side load balancing pushes the routing intelligence into each consumer. The client maintains a local view of the service registry (often via DNS or a service‑mesh control plane) and decides where to send each request.
Health checks are performed in two ways:
- Active probing: Each client runs its own periodic checks, creating a high probe volume at scale.
- Passive detection: Clients infer health from real‑traffic failures (timeouts, 5xx responses), reacting instantly after the first error.
4. How Dead Backends Affect Traffic Routing
When a backend goes down, the routing layer must quickly stop sending traffic its way. The impact differs dramatically between the two models:
Server‑Side Impact
- All clients continue to use the same single endpoint.
- Once the proxy marks the instance unhealthy, traffic stops instantly for every client.
- During the detection window, every request that lands on the dead node experiences a timeout.
Client‑Side Impact
- Each client decides independently; some may still route to the failed node until they observe a failure.
- Passive detection can cut the window to a single request, but the first request will fail.
- Active probing spreads additional load across the fleet, potentially amplifying the failure if not throttled.
5. Pros and Cons of Each Method
5.1 Server‑Side Health Checks
- Pros:
- Single source of truth – easier to audit and debug.
- Configuration lives in one place; changes propagate instantly.
- Lower probe traffic—only the proxy sends health checks.
- Works well for external traffic where you cannot control the client.
- Cons:
- Detection latency is bound by probe interval and fall thresholds.
- Proxy becomes a potential bottleneck at massive scale.
- Additional hop adds latency to every request.
5.2 Client‑Side Health Checks
- Pros:
- Sub‑millisecond failure detection with passive checks.
- No central proxy → lower per‑request latency.
- Scales horizontally; each client handles its own logic.
- Ideal for high‑throughput internal service‑to‑service calls.
- Cons:
- Health state is eventually consistent; different clients may see different views.
- Increased code complexity—health‑check logic must be duplicated across languages.
- Active probing can generate significant background traffic.
- Debugging requires inspecting many client instances.
6. Practical Recommendations for IT Architects & DevOps Engineers
Choosing the right model is rarely “one‑size‑fits‑all.” Below is a decision matrix that aligns with common enterprise scenarios.
| Scenario | Recommended Model | Key Settings |
|---|---|---|
| External traffic from browsers or third‑party apps | Server‑Side | Probe interval ≤ 5 s, fall = 2, rise = 2; enable graceful drain. |
| High‑volume internal micro‑service mesh (≥ 10 k RPS) | Client‑Side with passive detection | Back‑off = 30 s, jitter = 10 s; use service‑mesh (e.g., Istio) for shared config. |
| Mixed traffic (public API + internal services) | Hybrid: Server‑Side at edge, Client‑Side inside | Edge LB: aggressive health checks; internal SDK: passive + occasional active probe. |
| Small startup with < 5 services | Server‑Side (simpler ops) | Leverage managed ALB; set fall = 1 for rapid failover. |
Additional best‑practice tips:
- Always expose a dedicated
/healthzendpoint that returns quickly and checks only essential dependencies. - Combine active and passive checks for a balanced approach—passive for instant reaction, active for proactive detection of silent failures.
- Implement exponential back‑off and jitter to avoid thundering‑herd effects when many clients probe simultaneously.
- Log health‑check outcomes separately from business logs; this aids root‑cause analysis.
If you are looking for a platform that can orchestrate both server‑side and client‑side health‑check strategies, explore the UBOS platform overview. The platform’s built‑in Workflow automation studio lets you define custom health‑check policies without writing code.
Startups can accelerate their monitoring setup with UBOS for startups, while SMBs benefit from UBOS solutions for SMBs. Enterprises looking for a robust AI‑enhanced observability layer should consider the Enterprise AI platform by UBOS.
For developers who prefer a low‑code approach, the UBOS templates for quick start include a ready‑made AI SEO Analyzer and an AI Article Copywriter that can be extended to monitor service health.
Need to integrate conversational AI into your health‑check dashboard? Check out the ChatGPT and Telegram integration or the OpenAI ChatGPT integration for real‑time alerts.
Pricing transparency is essential; review the UBOS pricing plans to match your scale.
Explore real‑world use cases in the UBOS portfolio examples and learn how other companies have solved health‑check challenges.
The concepts discussed here are based on an in‑depth analysis originally published by Sanjay Singh. You can read the full source here.
7. Conclusion
Both client‑side and server‑side health checks have a place in a resilient architecture. Server‑side checks provide a single, authoritative view that is simple to manage, making them ideal for edge traffic. Client‑side checks, especially when combined with passive detection, deliver sub‑second failure awareness for high‑throughput internal calls.
By aligning the health‑check model with your traffic patterns, service‑mesh maturity, and operational bandwidth, you can dramatically reduce the window of exposure when a backend goes down. Leverage the guidance above, experiment with hybrid configurations, and let your monitoring platform—such as the UBOS homepage—automate the heavy lifting.
© 2026 UBOS Technologies. All rights reserved.
Andrii Bidochko
CTO UBOS
Andrii Bidochko is an AI entrepreneur and researcher focused on AI agents, reinforcement learning, and autonomous systems. He writes about the technologies shaping the future of machine intelligence, from frontier models and agent architectures to real-world AI applications.