Trying to set the timeout for requests in uWSGI, I\'m not sure of the correct setting. There seem to be multiple timeout options (socket, interface, etc.) and it\'s not rea
Setting http-timeout
worked for me. I have http = :8080
, so I assume if you use file system socket, you have to use socket-timeout
.
You're propably looking for the harakiri parameter - if request takes longer than specified harakiri time (in seconds), the request will be dropped and the corresponding worker recycled.
For standalone uwsgi (ini config):
[uwsgi]
http = 0.0.0.0:80
harakiri = 30
...
If you have nginx proxy before uwsgi you have to increase timeout as well:
location / {
proxy_pass http://my_uwsgi_upstream;
proxy_read_timeout 30s;
proxy_send_timeout 30s;
}
If you want (for some strange reason) higher timeout than 60s, you might consider communication over uwsgi
protocol. Configuration is quite similar nginx site:
location / {
uwsgi_read_timeout 120s;
uwsgi_send_timeout 120s;
uwsgi_pass my_upstream;
include uwsgi_params;
}
uwsgi:
[uwsgi]
socket = 0.0.0.0:80
protocol = uwsgi
harakiri = 120
...