Как на самом деле работают max-запросы в uwsgi - PullRequest
0 голосов
/ 22 апреля 2020

Я создаю веб-приложение uwsgi с python и столкнулся с требованием, в котором я должен ограничить номер. запросов, которые сервер должен принять. Здесь я наткнулся на опцию uwsgi max-requests. Но в справке говорится: help: reload workers after the specified amount of managed requests.

Так как я не являюсь носителем английского языка sh, я не мог понять, что именно это означает.

В настоящее время я понимаю:

Предположим, я установил максимальные запросы на 100, на 10 работников. Я получаю 150 запросов, 100 запросов обслуживаются, а остальные помещаются в какую-то очередь. (?) После выполнения 1-го запроса работник принимает 101-й запрос. (?)

Пожалуйста, уточните / помогите.

1 Ответ

0 голосов
/ 22 апреля 2020

Итак, ваш код Python запущен на рабочих. Обычно их несколько параллельно. max-requests указывает, что после определенного числа запросов на одного работника он перезагружается. По сути, ваш Python код перезапускается каждые max-requests.

. В вашем примере, если у вас 150 запросов с 10 работниками, ничего не произойдет (потому что 150/10 <100). </p>

Но после 1000 запросов рабочие будут перезагружены (что займет некоторое время, но, вероятно, это нормально, потому что есть 10 рабочих, поэтому они не будут перезагружены одновременно). Там нет очередей.

...