Я прочитал много статей о gunicorn
& nginx
конфиги таймаута.
На моем веб-сайте есть несколько запросов, которые занимают больше 30 секунд. Я все поменял gunicorn
таймауты до 3 секунд, но все равно получаются
Ошибка 504 Время ответа сервера истекло
ошибка через 30 секунд.
Файл конфигурации Gunicorn:
[Unit]
Description=gunicorn daemon
After=network.target
[Service]
User=user
Group=www-data
WorkingDirectory=/home/user/Lav/project
ExecStart=/home/user/LavEnv/project/bin/gunicorn --access-logfile - --workers 3 --keep-alive 3 --timeout 3 --graceful-timeout 3 --bind unix:/home/user/Lav/project/project.socket project.wsgi:application
[Install]
WantedBy=multi-user.target
Файл конфигурации Nginx:
server {
listen 80;
server_name 178.63.217.47;
location = /favicon.ico { access_log off; log_not_found off; }
location /static/ {
root project_root;
}
location /media/ {
root project_root;
}
location /files/ {
root project_root;
}
location / {
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_connect_timeout 300;
proxy_send_timeout 300;
proxy_read_timeout 300;
include uwsgi_params;
proxy_pass http://unix:/project_root/StoreManager.socket;
}
}
Таймауты работают хорошо, когда я запускаю веб-сайт непосредственно из gunicorn (--bind 0.0.0.0:8000), эта проблема возникает с nginx-gunicorn.
Как я могу установить для тайм-аута значение более 30 секунд?