如何修复“上游过早关闭”

时间:2019-09-11 04:46:32

标签: python amazon-web-services nginx flask uwsgi

我正在设置服务器,以避免在客户端调用中随机出现的“上游过早关闭”错误502。我的Rest API Python / Flask托管在Nginx / Uwsgi上的AWS上,我最多可以有200个并发用户。

在错误日志上,我收到此消息:

  

1180上游过早关闭了连接,同时从上游读取响应头,客户端:xxx.xx.xx.xx,服务器:_,请求:“ POST / API / sendmessage HTTP / 1.1”,上游:“ uwsgi:// unix :///opt/python/log/uwsgi.sock:“,主机:” XXX.XXXX-prod.com“

在access.log上,我得到502:

  

“ POST / API / sendmessage HTTP / 1.1” 502166“-”“ okhttp / 3.12.1”

我已经在AWS上尝试过Apache配置,这是最糟糕的!这是我当前的配置:

在64位Amazon Linux / 2.8.6上运行的Python 3.6
d'instance EC2类型:c5.large

我共享安装文件的一些配置:

  exec /opt/python/run/venv/bin/uwsgi \
     --socket=/opt/python/log/uwsgi.sock \
     --chdir=/opt/python/current/app \
     --module=wsgi:application \
     --pidfile=/opt/python/run/uwsgi-master.pid \
     --processes=4 \
     --threads=1 \
     --master \
     --uid=wsgi  \
     --gid=wsgi \
     --harakiri=300 \
     --max-requests=5000 \
     --vacuum \
     --die-on-term \
     --venv=/opt/python/run/venv \
     --chmod-socket=666

我尝试了多种方法:更改流程,线程,删除母版,“按期死亡”,但我真的很困惑。我想我已经阅读了Stack Overflow和Google上与此主题相关的所有文章。

0 个答案:

没有答案