У меня есть единственный сервер Nginx, делающий выравнивание нагрузки к нескольким вышестоящим серверам.
Что происходит, когда запрос входит?
Подсистема балансировки нагрузки сохраняет соединение открытым и ожидает ответа от вышестоящих серверов? Или это просто вручает запрос вышестоящему серверу и "закрывает" соединение?
Если бы подсистема балансировки нагрузки сохраняет соединение открытым, пока запрос не был обработан, это означало бы, что подсистема балансировки нагрузки является узким местом в моей системе, и не имело бы значения, если бы я увеличил число вышестоящих серверов.
Это зависит от того, что вы укажете nginx в своей конфигурации и какой режим проксирования установлен.
Если ваш вариант использования - proxy_pass
или fastcgi_pass
] это контролируется proxy_http_version
и fastcgi_keep_conn
в сочетании с директивой keepalive
в блоке вышестоящего сервера.