Нормально ли, что manage.py runserver имеет лучшие перфы, чем мой gunicorn/nginx conf?
У меня проблемы с производительностью моего DRF API. Дело в том, что запуск manage.py runserver намного лучше по производительности, чем мой prod gunicorn/nginx сервер. Я не знаю, является ли это "нормальным"
Я не нашел много ресурсов для полного понимания gunicorn/nginx, чтобы иметь возможность действительно правильно их оптимизировать. Я нашел только несколько средних статей, таких как эта, в которых говорится в основном о потоках, и это не помогло мне ликвидировать этот пробел в перфорации.
Я бегу :
gunicorn --access-logfile /var/log/gunicorn/access.log --error-logfile /var/log/gunicorn/error.log --capture-output --log-level debug --timeout 12000 website.wsgi:application --workers 3 --threads 4 --reload &
И я получил это в моем nginx :
upstream django {
server 127.0.0.1:8000;
}
limit_req_zone $binary_remote_addr zone=pretrainedlimit:50m rate=10r/s;
server {
listen 80;
server_name api.ai-compare.com; # customize with your domain name
client_max_body_size 20M;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_connect_timeout 600;
proxy_send_timeout 600;
proxy_read_timeout 600;
send_timeout 600;
location / {
proxy_pass http://django;
}
location /v1/pretrained/ {
limit_req zone=pretrainedlimit burst=10;
proxy_pass http://django;
}
}
Я тестирую перфы с помощью Apache Jmeter.
Есть ли у вас, ребята, хороший ресурс по этому вопросу?