我曾使用nginx和gunicorn在两个服务器上托管我的网站,
两台服务器具有相同版本的软件包,并且网站已成功托管,
但是在我的一台服务器中,gunicorn总是超时并且出现错误
[CRITICAL]Worker Timeout
Booting worker with pid
Worker cannot boot with pid
之后,我在网页中收到502 Badgateway错误。我必须重启gunicorn程序才能打开网站。
以下是错误日志:
2014-02-16 14:29:53 [1267] [CRITICAL] WORKER TIMEOUT (pid:4994)
2014-02-16 14:29:53 [1267] [CRITICAL] WORKER TIMEOUT (pid:4994)
2014-02-16 14:29:53 [22140] [INFO] Booting worker with pid: 22140
我收到这样的continueos错误,
2014-02-16 14:29:53 [22140] [DEBUG] Ignoring EPIPE
Ignoring EPIPE
2014-02-16 14:29:53 [22140] [DEBUG] Ignoring EPIPE
Ignoring EPIPE
2014-02-16 14:29:57 [22140] [DEBUG] Ignoring EPIPE
Ignoring EPIPE
工人又开始了
2014-02-16 14:32:44 [1267] [CRITICAL] WORKER TIMEOUT (pid:4993)
2014-02-16 14:32:44 [1267] [CRITICAL] WORKER TIMEOUT (pid:4993)
2014-02-16 14:32:44 [22276] [INFO] Booting worker with pid: 22276
再次忽略EPIPE错误,这种情况一直持续到我重新启动Gunicorn。当我收到此错误时,我从Nginx收到504网关错误
1
请提供更多信息吗?您用于启动Gunicorn的命令行将是一个不错的开始。
—
supervacuo
跟踪工人以了解其卡在哪里:
—
Aryeh Leib Taurog
strace -p <PID> -e trace=network -t
您正在运行什么应用程序?您可能要增加默认超时。
—
Burhan Khalid 2014年
是的Burhan Khalid,目前我在nginx中将proxy_read_timeout增加到1200,在gunicorn配置中将超时增加到3600。希望这项工作有效
—
sm 2014年
@sm-有效吗?
—
iamkhush