rtmp_auto_push_reconnect

Директива 'rtmp_auto_push_reconnect' включает автоматические попытки переподключения при отправке RTMP-потока в случае нарушений соединения.

Синтаксисrtmp_auto_push_reconnect interval;
По умолчаниюnone
Контекстmain
Аргументы1

Описание

Директива rtmp_auto_push_reconnect является частью модуля NGINX RTMP и используется в контексте основной конфигурации. При включении она позволяет серверу автоматически пытаться переподключаться к нижестоящим RTMP-серверам в случае разрыва соединения. Это особенно полезно для приложений, требующих высокой доступности, поскольку сводит к минимуму время простоя за счёт автоматизации процесса переподключения.

Директива принимает один аргумент, который указывает интервал (в миллисекундах) между попытками переподключения. Если аргумент задан, NGINX будет продолжать пытаться установить соединение RTMP push stream через указанные интервалы до тех пор, пока это не удастся. Пользователям следует учитывать последствия слишком агрессивной настройки этой директивы, такие как перегрузка нижестоящего сервера частыми попытками подключения во время продолжительных простоев.

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

Пример конфига

rtmp {
    server {
        listen 1935;

        application live {
            live on;
            rtmp_auto_push_reconnect 5000;  # Reconnect every 5 seconds
        }
    }
}

Установка слишком малого интервала переподключения может привести к чрезмерной нагрузке на вышестоящий сервер.

Неспособность корректно обрабатывать ошибки потока может привести к ненужным попыткам переподключения и исчерпанию ресурсов на сервере.

← Ко всем директивам