2014-06-10 57 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

相關問題