uwsgi报错,前端返回504

前端返回504

 uwsgi报错日志问题1

1
2
3
Tue Jan 19 14:06:15 2021 - SIGPIPE: writing to a closed pipe/socket/fd (probably the client disconnected)
BrokenPipeError: [Errno 32] Broken pipe(非正常关闭socket引发的错误)
broken pipe是send、write、writev时都有可能产生的错误,当一端在写另一端关闭了的连接的时候,就会产生broken pipe的错误。

uwsgi报错日志问题2

1
2
3
4
5
6
7
问题2
Fri Apr  2 17:43:17 2021 - SIGPIPE: writing to a closed pipe/socket/fd (probably the client disconnected) on request /cross_server/update_version/ (ip 192.168.10.1) !!!
Fri Apr  2 17:43:17 2021 - uwsgi_response_writev_headers_and_body_do(): Broken pipe [core/writer.c line 306] during POST /cross_server/update_version/ (192.168.10.1)
[ERROR][2021-04-02 17:43:17,212][setup.py:910]An un-handled exception was caught by salt's global exception handler:
OSError: write error
OSError: write error
OSError: write error

分析:

都是客户端中止连接,然后Nginx关闭连接而不告诉uwsgi中止。 然后,当uwsgi返回结果时,套接字已经关闭

解决方法

nginx配置添加参数

1
2
3
uwsgi_send_timeout 1800;        # 指定连接到后端uWSGI的超时时间。
uwsgi_connect_timeout 1800;     # 指定向uWSGI传送请求的超时时间,完成握手后向uWSGI传送请求的超时时间。
uwsgi_read_timeout 1800;        # 指定接收uWSGI应答的超时时间,完成握手后接收uWSGI应答的超时时间。

uwsgi配置添加参数  

1
2
3
ignore-sigpipe=true #使uWSGI不显示SIGPIPE错误;
ignore-write-errors=true #使它不显示诸如uwsgi_response_writev_headers_and_body_do的错误;
disable-write-exception=true #防止 OSError写入时生成。

  

  

  

posted @   lucky_tomato  阅读(1010)  评论(0编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· 写一个简单的SQL生成工具
· AI 智能体引爆开源社区「GitHub 热点速览」
· C#/.NET/.NET Core技术前沿周刊 | 第 29 期(2025年3.1-3.9)
点击右上角即可分享
微信分享提示