我在AWS上有一个Django,Nginx,Gunicorn和MySQL。
从django运行回发调用一个需要超过30秒才能完成的存储过程会导致返回" 502 Bad Gateway" nginx / 1.4.6(Ubuntu)。
确实看起来像是超时问题,而this post应该解决它。
但是,唉,它似乎没有起作用。
这是我的gunicorn.conf文件:
description "Gunicorn application server handling formManagement django app"
start on runlevel [2345]
stop on runlevel [!2345]
respawn
setuid ubuntu
setgid www-data
chdir /home/ubuntu/AARC-ServiceManager/ServerSide/formManagement
exec ve/bin/gunicorn --timeout 300 --workers 3 --bind unix:/home/ubuntu/AARC-ServiceManager/ServerSide/formManagement/formManagement.sock formManagement.wsgi:application
我的Nginx.conf:
user www-data;
worker_processes 4;
pid /run/nginx.pid;
events {
worker_connections 768;
# multi_accept on;
}
http {
##
# Basic Settings
##
# set client body size (max http request size) #
client_max_body_size 50M;
#upping the timeouts to allow time for the DB to return from a long running sproc
proxy_connect_timeout 300s;
proxy_read_timeout 300s;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
# server_tokens off;
# server_names_hash_bucket_size 64;
# server_name_in_redirect off;
include /etc/nginx/mime.types;
default_type application/octet-stream;
##
# Logging Settings
##
access_log /var/log/nginx/access.log;
error_log /var/log/nginx/error.log;
##
# Gzip Settings
##
gzip on;
gzip_disable "msie6";
include /etc/nginx/conf.d/*.conf;
include /etc/nginx/sites-enabled/*;
}
<小时/>
有什么想法吗?
更新: 这是nginx错误日志中的错误: [错误] 14316#0:* 13上游过早关闭连接,同时从上游读取响应头...
答案 0 :(得分:1)
我找到了决议!
我正在更新错误的gunicorn.conf文件。
我保存到配置文件到我的源代码控制,当我在服务器时,正在更新该文件。
但是,我需要在位置更改文件:
/etc/init/gunicorn.conf
...我学到了关于在服务器上安装多个配置文件的课程。
感谢所有提供帮助的人。