Network & Infrastructure / High Availability & Recovery Design
Load-balancer readiness checks that exercise a real dependency
A backend returns a static health page while every useful request fails on an unavailable database. The load balancer distributes traffic evenly among servers that cannot perform their job.
Environment and inputs: Routed and clustered services; define failure ownership, fencing and application recovery requirements before testing. Diagnostic/design example; not tested on production equipment.
Collect the evidence
Record the health endpoint's actual checks, application error rates and dependency failure behavior. Distinguish a liveness check from readiness to handle the specific traffic assigned to the pool.
Explain the result
A process can be alive but not ready. Conversely, making every minor dependency mandatory can remove all backends unnecessarily, so health semantics must reflect the actual service contract.
Plan the fix
Design a bounded readiness check with explicit critical dependencies and appropriate failure/recovery thresholds. Keep deep diagnostics separate if they are too expensive or failure-prone for frequent probing.
Check the result and rollback
Test critical and noncritical dependency failures and verify the expected pool membership. Revert if the new check overloads backends or removes capacity for conditions the application can handle gracefully.