Nginx 502 Bad Gateway - Django - Gunicorn - 运行MySQL报告(存储过程)时间超过30秒

时间:2016-12-21 20:50:53

标签: django nginx gunicorn

我在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上游过早关闭连接,同时从上游读取响应头...

1 个答案:

答案 0 :(得分:1)

我找到了决议!

我正在更新错误的gunicorn.conf文件。

我保存到配置文件到我的源代码控制,当我在服务器时,正在更新该文件。

但是,我需要在位置更改文件:

/etc/init/gunicorn.conf

...我学到了关于在服务器上安装多个配置文件的课程。

感谢所有提供帮助的人。