dynamic_upstrand

Директива 'dynamic_upstrand' позволяет выбирать upstreams во время выполнения на основе указанных параметров.

Синтаксисdynamic_upstrand upstream_name [upstream_name2 ...];
По умолчаниюnone
Контекстserver, location, if in location
Аргументы2+

Описание

Директива 'dynamic_upstrand' — это мощная функция, предоставляемая NGINX Combined Upstreams module, которая позволяет определять upstream серверы, выбираемые динамически во время выполнения. Эта директива требует как минимум двух аргументов, которые обычно задают определения upstream серверов, доступных для выбора. Благодаря возможности конфигурации во время выполнения, директива открывает варианты для более гибкого распределения нагрузки и управления ресурсами, позволяя серверу адаптироваться в зависимости от текущего спроса или доступности upstream ресурсов.

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

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

location /api {
    dynamic_upstrand primary_servers secondary_servers;
}

Убедитесь, что количество аргументов не меньше двух, иначе NGINX выдаст ошибку при загрузке конфигурации.

Остерегайтесь неправильно названных upstreams; если указанный upstream не существует, NGINX может не суметь правильно маршрутизировать запросы.

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