2016-04-29 83 views
1

我在寫一個接受許多大文件上傳的金字塔應用程序(作爲POST)。與How can I serve temporary files from Python Pyramid類似,我遇到問題,由cgi.FieldStorage創建的臨時文件是孤立的,消耗了GB的磁盤空間。 lsof表示我的wsgi進程已從/tmp中刪除文件,但文件尚未關閉。重新啓動應用程序會清除孤兒。釋放cgi.FieldStorage臨時文件使用的磁盤空間

如何關閉這些文件以便將磁盤空間返回到操作系統?

回答

0

我遇到的這個問題與cgi.FieldStorage無關,金字塔實際上使用WebOb來序列化數據。

磁盤空間佔用率高的原因是pyramid_debugtoolbar。調試器在其文檔中指出,它維護來自先前100個請求的數據,在我的情況下佔用了大量的內存和磁盤空間。從__init__.py中刪除調試器的包含並重新啓動服務器可解決問題。