Серверы и ИИ: практическое применение

Graceful reload HAProxy: старые соединения могут оставаться у прежнего worker

Запросить

Два поколения workers. Прежний worker: Обслуживает существующие соединения. Новый worker: Принимает новые подключения. Долгие сеансы: Проверить завершение старого поколения.
Два поколения workers. Схема поясняет описанный механизм; условия и границы проверки приведены в тексте.

Перезагрузка конфигурации не означает переноса каждого открытого соединения в новый процесс. При graceful-процедуре прежний worker прекращает принимать новые подключения и продолжает обслуживать существующие до их завершения. Для долгоживущих сеансов это может занять значительное время.

Management Guide описывает запуск новых workers при master-worker reload и отдельное поведение жёсткой остановки. Поэтому текущий файл конфигурации и правила нового worker не обязательно описывают каждое ещё живое старое соединение. Оператору нужно различать поколения процессов и их нагрузку.

Длительные туннели или потоковые подключения способны удерживать ресурсы нескольких поколений после повторных reload. Hard-stop-after ограничивает время завершения soft-stop и может прекратить оставшиеся соединения. Его нельзя считать одновременно гарантией бесконечного сохранения сеанса и немедленного освобождения памяти.

В приёмке проверяют новый запрос, существующий длительный поток и несколько последовательных reload на стенде. Наблюдают завершение старых workers и клиентский результат при согласованном пределе остановки. Успешный код запуска новой конфигурации не является подтверждением отсутствия старых процессов или нулевого влияния на все типы соединений.

Основание — Official HAProxy3.2 text references, Configuration Manual dated2026/10/14; separate PROXY protocol1/2 specification, разделы Stopping and restarting HAProxy; master-worker reload; hard-stop-after. Сохранён текст публичной справочной публикации; конкретная реализация может поддерживать только часть возможностей. Основание — официальные текстовые справочники ветки HAProxy 3.2. Configuration Manual имеет дату 2026/10/14; номер patch из другого HTML-конвертера на эти файлы не переносится. Установленные сборка, конфигурация и backend не проверялись; изменений не выполнялось.

Запросить

К разборам: Серверы и ИИ