push_reconnect
Директива push_reconnect настраивает поведение автоматического переподключения для push-клиентов при живых трансляциях в модуле NGINX RTMP.
Описание
Директива push_reconnect — это параметр конфигурации в модуле NGINX RTMP, который позволяет определить, как сервер должен обрабатывать переподключения от push-клиента при потере соединения. При трансляции живого контента сохранение стабильного соединения критически важно. Если push-клиент теряет соединение из-за проблем с сетью или простоя сервера, эта директива позволяет серверу попытаться автоматически переподключиться через заданный интервал времени, вместо немедленного завершения соединения. Эта функция особенно полезна для сценариев живой трансляции: она предотвращает потерю потоков из-за кратковременных перебоев связи и обеспечивает более плавный просмотр для зрителей.
Параметры состоят из одного аргумента, который задаёт интервал времени в секундах между попытками переподключения. Например, установка push_reconnect 5; заставит сервер ждать пять секунд перед попыткой восстановить соединение с push-клиентом. Директиву следует задавать в соответствующем контексте приложения, чтобы она была эффективной. Также важно учитывать, что если клиент не восстановится в заданный период, это может привести к потере потока, поэтому требуется корректная настройка в зависимости от ожидаемой надёжности сети.
Пример конфига
application live {
live on;
push rtmp://backup_server/live;
push_reconnect 5;
}Убедитесь, что применена правильная единица измерения (секунды); указание неверного формата приведёт к ошибкам конфигурации.
Установка слишком короткого интервала повторного подключения может перегрузить сервер попытками переподключения в нестабильных сетевых условиях.
Убедитесь, что все зависимые директивы, влияющие на поведение потока (например, push), правильно настроены вместе с push_reconnect.