Балансировщик не видит, жив ли ваш сервер. Он видит только ответ на один конкретный запрос, отправленный по расписанию, — и на основе этого ответа принимает решение, пускать на бэкенд трафик или нет. Если это решение настроено небрежно, вы получите ситуацию, которая на первый взгляд выглядит абсурдно: приложение отвечает пользователям нормально, логи чистые, CPU не в потолке — а балансировщик упорно считает узел мёртвым и исключает его из пула. Разберёмся, как устроена эта проверка изнутри и почему она умеет ошибаться в обе стороны.
Подробнее →