Django, Apache, WSGIDaemonProcess и потоки - PullRequest
0 голосов
/ 28 января 2020

Я пытаюсь настроить производительность приложения Django, которое обслуживается через Apache.

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

WSGIDaemonProcess ... processes=8 threads=15 python-path=...

, поскольку это также соответствует некоторому примеру.

Мне было интересно, применяется ли GIL в Python к веб-серверу когда настроен таким образом. Если так, значит ли это, что мне нужно изменить конфигурацию, чтобы использовать больше процессов и меньше потоков, чтобы получить больше параллелизма? Когда я попытался это сделать, в ходе моего нагрузочного тестирования было зарегистрировано гораздо больше сбоев при загрузке файлов stati c, поэтому я не уверен, имеет ли это смысл.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...