Рейтинг:3

Ограничение Nginx max_conns на нескольких серверах

флаг br

Если у меня есть два блока сервера в Nginx, и они оба используют одни и те же определения восходящего потока. Как в этом случае будет работать предел max_conns?

Я предполагаю, что оба блока сервера будут иметь ограничение в 100 максимальных подключений и 90 подтверждений активности. Таким образом, следующие серверные блоки могут иметь в общей сложности 200 max_conns?

восходящий пример {
    сервер example.com:443 max_conns=100;
    поддержка активности 90;
}

 сервер {

            слушать 1.1.1.1:80;
            имя_сервера proxy.site.net;
            proxy_pass https://пример
            proxy_bind 1.1.1.1 прозрачный;
 }
 
  сервер {

            слушать 1.1.1.2:80;
            имя_сервера proxy.site.net;
            proxy_pass https://пример
            proxy_bind 1.1.1.2 прозрачный;
 }

В моем происхождении есть ограничение в 100 одновременных подключений на IP. Итак, я разделяю трафик, используя разные IP-адреса для каждого блока сервера.Итак, я хочу добиться 100 одновременных подключений на блок сервера (или на общедоступный IP-адрес). Как мне это сделать?

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

ОБНОВИТЬ:

Источником является облачный провайдер, который установил жесткие ограничения на «подключения на IP», чтобы избежать перегрузки. Источник говорит, что каждый IP-адрес может иметь до 100 одновременных HTTP-соединений. Если тот же IP-адрес попытается установить соединение с номером 101, источник выдаст ошибку. Итак, я хочу использовать два IP-адреса, чтобы иметь возможность одновременно устанавливать 200 одновременных подключений к источнику. Пожалуйста, помогите, если вы знаете, что нужно изменить в моем коде, чтобы добиться этого. ✓

ОБНОВЛЕНИЕ 2:

Ниже приведен последний код, который я использую для достижения 200 запросов в секунду с помощью циклического перебора DNS на общедоступных IP-адресах моего сервера.

У меня есть два разных IP-адреса, которые прослушиваются в двух блоках сервера и два разных имени вверх по течению для этих блоков сервера.

Теперь я предполагаю, что если 100 человек используют первый IP-адрес в циклическом переборе DNS, а следующие 100 используют второй IP-адрес, то я смогу одновременно обслуживать 200 человек. Хотя в моем происхождении есть ограничение в 100 подключений на IP.

Пожалуйста, дайте мне знать, если этот код выглядит правильно?

восходящий пример {
    сервер example.com:443 max_conns=100;
    поддержка активности 90;
}

восходящий пример2 {
    сервер example.com:443 max_conns=100;
    поддержка активности 90;
}

 сервер {

            слушать 1.1.1.1:80;
            имя_сервера proxy.site.net;
            proxy_pass https://пример
            proxy_bind 1.1.1.1 прозрачный;
 }
 
  сервер {

            слушать 1.1.1.2:80;
            имя_сервера proxy.site.net;
            proxy_pass https://example2
            proxy_bind 1.1.1.2 прозрачный;
 }
djdomi avatar
флаг za
нет, у них будет 100, как указано выше, но почему вы хотите использовать это сейчас?
флаг br
Только что обновил вопрос, пожалуйста, прочитайте объяснение ниже примера кода.
djdomi avatar
флаг za
все то же самое, поскольку целевой лимит установлен на 100. ИМХО, вы ничего не меняли, и ограничение в 100 на один IP-адрес не было бы обычным вариантом использования, в этом случае один IP-адрес может съесть все ваши соединения, я считаю все еще здесь проблема x и y, и вам, возможно, придется рассказать нам о бэкэнде, кроме того, я думаю, вы хотите прочитать [руководство] (https://docs.nginx.com/nginx/admin-guide/security-controls/ контроль-доступ-прокси-http/)
флаг br
Источником является облачный провайдер, который установил жесткие ограничения на «подключения на IP», чтобы избежать перегрузки. Источник говорит, что каждый IP-адрес может иметь до 100 одновременных HTTP-соединений. Если тот же IP-адрес попытается установить соединение с номером 101, источник выдаст ошибку. Итак, я хочу использовать два IP-адреса, чтобы иметь возможность одновременно устанавливать 200 одновременных подключений к источнику. Пожалуйста, помогите, если вы знаете, что нужно изменить в моем коде, чтобы добиться этого.
djdomi avatar
флаг za
добавьте это как обновление, а не как комментарий
флаг br
Пожалуйста, посмотрите на мое «обновление 2» в вопросе и посмотрите, поможет ли оно мне установить более 100 подключений одновременно.
djdomi avatar
флаг za
может работать, выполните тестовую загрузку и проверьте, вам не нужно указывать порт по умолчанию, если используется https на 443, порты нужны только в том случае, если это не 80 для http или 443 для jttos

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.