码迷,mamicode.com
首页 > 其他好文 > 详细

[error] [nginx+uwsgi] upstream prematurely closed connection while reading response header from upstream

时间:2020-05-15 13:05:05      阅读:71      评论:0      收藏:0      [点我收藏+]

标签:处理   manage   接口   修改   closed   调用   err   upstream   启动服务   

upstream prematurely closed connection while reading response header from upstream, client: 10.16.151.131, server: localhost, request: "POST /hsvltnprjct/predict/ HTTP/1.1", upstream: "http://10.16.195.51:8080/hsvltnprjct/predict/", host: "api.web"

1.问题描述

通过postman调用django后端服务接口,返回如下页面,但是只是偶尔返回,有时正常响应

技术图片

查看nginx报错日志,如下:

技术图片

2.问题解决

通过网上百度各种方案,如下:

  1. 增加keepalive 30000; 无效
  2. 修改proxy_buffer_size参数,也无效
  3. 关闭proxi_buffering=off; 也无效

突然想到不一定是nginx的问题,是不是后端服务问题呢?

  1. 测试1:穿过nginx直接访问uwsgi启动的nginx服务,发现服务无响应的概率几乎60%。
  2. 测试2:直接通过python manage.py启动服务,访问服务发现一切正常

由上反映出问题不在nginx,在uwsgi,这样就好处理了

修改uwsgi配置文件,将buffer-size=32768改为3276800

buffer-size=3276800

重启服务,再次访问,服务回归正常。不容易,坑太多了

[error] [nginx+uwsgi] upstream prematurely closed connection while reading response header from upstream

标签:处理   manage   接口   修改   closed   调用   err   upstream   启动服务   

原文地址:https://www.cnblogs.com/ryxiong-blog/p/12894077.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!