ajp_send_timeout

Директива `ajp_send_timeout` задаёт период ожидания при отправке запроса на AJP-бэкенд-сервер.

Синтаксисajp_send_timeout time;
По умолчаниюnone
Контекстhttp, server, location
Аргументы1

Описание

Директива ajp_send_timeout используется в конфигурации NGINX для определения продолжительности времени, отведённого на отправку запроса на AJP (Apache JServ Protocol) бекенд-сервер. Этот таймаут помогает предотвратить бесконечное удержание ресурсов, если бекенд-сервер не отвечает в ожидаемые сроки. Любые соединения, которые превысят указанный период ожидания, будут закрыты, что позволяет лучше управлять ресурсами и избегать потенциальных взаимоблокировок или узких мест в обработке запросов.

Директива принимает один параметр — значение времени, задаваемое в формате секунд (s), минут (m) или часов (h). Например, значение 30s означает, что NGINX позволит максимум 30 секунд на завершение операции отправки, прежде чем считать её ошибкой. Установка слишком малого значения может привести к преждевременным таймаутам при высокой задержке, тогда как слишком большое значение может привести к исчерпанию ресурсов в ожидании ответа от бекенда.

Директива настраивается в контекстах http, server или location, что даёт гибкость в зависимости от области применения — глобально или для конкретного маршрута, где требуется отдельная стратегия таймаутов.

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

location /api {
    ajp_pass backend;
    ajp_send_timeout 30s;
}

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

Эта директива влияет только на запросы к бэкендам AJP, а не на обычные проксированные HTTP-соединения.

Если используется во вложенных контекстах, проверьте, что это не конфликтует со значениями таймаутов в родительском контексте.

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