β οΈ This post links to an external website. β οΈ
A service reports healthy. The load balancer believes it. A request lands on it and times out. Another follows. Then ten more. By the time the system reacts, hundreds of requests have drained into a broken instance while users stared at a spinner.
Health checking sounds simple: ask if something is alive, stop sending traffic if it isnβt. In practice, the mechanism behind that check, and who performs it, determines how fast your system detects failure, how accurately it responds, and how much of that complexity leaks into your application code.
The answer is fundamentally different depending on where load balancing lives: in a central proxy, or in the client itself.
continue reading on singh-sanjay.com
If this post was enjoyable or useful for you, please share it! If you have comments, questions, or feedback, you can email my personal email. To get new posts, subscribe use the RSS feed.