django 引發「記憶體洩漏」 的問題

2021-06-04 16:39:26 字數 443 閱讀 4708

早在一年以前,自己寫的乙個程式部署在公司的伺服器上長期執行,後來發現這台機器記憶體經常被這個程序占光,於是懷疑是python記憶體**的問題。

最近兩天,這個問題又冒了出來,因為業務的發展,專案中需要的指令碼程式越來越多,所以這個問題必須解決,於是花了兩周的時間一直在排查,而網上也有很多文章描述python占用記憶體不**的問題。

終於在今天網上搜到一篇文章介紹django引起記憶體洩漏的問題 

一開始我並沒有仔細看,以為和我的場景並不一樣,但當我黔驢技窮而最終這篇文章再次出現在我面前時,我簡單地看了個開頭,忽然發現和我的場景竟然是一樣的,只不過我的場景更加複雜給了我很多假象而已...

中心思想就是,如果程式中匯入了某個django站點模組,而這個django站點的debug設定為true的話,就會導致所有的sql查詢都會被儲存在記憶體中.

於是果斷地把debug設定為false,再次啟動,記憶體不再漲了

分裝button元件引發的記憶體洩漏問題

這個問題其實一開始在vue裡寫的時候並沒有注意到這一點,也沒有報錯,直到在react裡寫的時候給我報了一堆錯之後,經各種磨爛之後最終找到是分裝button元件的問題,既然找到問題在哪就好辦了 直接先上 這裡分裝了乙個防抖的元件,為的是不讓按鈕操作在單位時間內過多的請求後台,但是,在路由跳轉中會出現記...

Co 遞迴呼叫引發的記憶體洩漏

我們知道,同步的遞迴寫法,如果在退出遞迴條件失效時,會快速因為棧溢位導致程序掛掉。而在某些場景下,我們會採用非同步的遞迴寫法來規避這個問題 async function recursive 關鍵字 await 後面的函式呼叫可能會跨越多個 event loop,這樣的寫法下不會出現棧溢位的錯誤。然而...

jQuery實時重新整理引發的記憶體洩漏

工作中需要頁面資料的實時重新整理,採用了jquery的ajax實現,前後臺使用json格式資料通訊。有兩個定時器,每3s重新整理一次,執行一段時間後發現頁面記憶體占用了900 m,太恐怖了。除錯步驟如下 1 ajax回傳資料後不做任何操作,在success中直接return,發現記憶體持續增長,沒有...