2014-06-10 54 views
9

同时击中Python中的REST资源(my_resource),该uWSGI服务器是扔在其日志中出现以下错误:修复损坏的管道错误与Python

SIGPIPE: writing to a closed pipe/socket/fd (probably the client disconnected) on request my_resource (ip <my_ip>) !!! 
uwsgi_response_write_body_do(): Broken pipe [core/writer.c line 164] 
IOError: write error 

这似乎是相关的超时(客户端在请求可以完成处理之前断开连接)。

这是什么类型的超时,它是如何修复的?

回答

7

它取决于您的前端服务器。例如,nginx具有uwsgi_read_timeout参数。 (一般设定为60秒)。作为--http-timeout的uWSGI http路由器默认为60秒,依此类推。正如你正在谈论的休息api我很疑惑它需要超过60秒来产生一个响应,你确定你没有一些错误的响应头触发一个连接前端网络服务器关闭?

+0

是的,我很确定。为什么这个单一的请求需要更长的时间才能生成响应,这是有特殊原因的,我们会在必要时处理这个响应但是,现在,增加超时时间似乎是一种方式。谢谢! –

+0

我有同样的问题,不能以这种方式解决它。 即时通讯使用Flask,我希望请求有点大,因为他们带来的音频二进制数据的变化持续时间在2secs和15secs之间。即使对于在请求中传输的小音频样本,我仍然在错误日志中获取thisi消息。 – lithiumlab

+0

我的问题是固定升级openssl版本1.0.2g – lithiumlab

相关问题