Ubuntu
伺服器記憶體問題,以及託管公司的預期服務水平
我參與維護一個執行我們的 django 網站 (nginx/apache/mod_wsgi) 的 Ubuntu VPS,我們遇到了一些記憶體峰值,這些峰值要麼導致數據庫當機,要麼在記憶體管理系統可以時引發核心恐慌’ t 找到任何可殺死的程序。我正在努力修復記憶體峰值,但我想知道如果它再次發生,我是否可以做些什麼來更好地處理這個問題。
有沒有什麼工具可以用來檢測記憶體峰值,然後,比如說,殺死有問題的程序並通過電子郵件發送給伺服器管理員來修復它?關閉一個網站以使伺服器可以保持執行肯定比整個事情都崩潰更可取。
此外,由於我們不得不讓託管公司重新啟動伺服器,因此我們向我們收取*了 600 美元的非工作時間服務 - 這是託管公司之間的標準做法嗎?*與我合作的另一個提供商提供了一個面板,我可以使用它自己停止和啟動伺服器,並且只要重新啟動就可以了, $ 600 seems mightily excessive. (That’s NZD, it’s around $ 445 美元)
600 美元對於非工作時間的重啟來說絕對是昂貴的。我建議尋找另一個主機。相比之下,您可以從提供自動重啟的地方獲得幾個月的託管服務。
查看 monit 以自動終止程序。您可以將其配置為監視 cpu/memory 甚至伺服器的狀態,並在任何看起來異常時讓它採取行動。
您可以將系統配置為不過度使用記憶體。用於
sysctl
設置vm.overcommit
為 0。445 美元似乎很多,但是:您在遇到問題之前是否閱讀了細則?如果需要重新啟動,您是否制定了計劃?回想起來,這是顯而易見的事情之一,但應該提前計劃好。而且,老實說,445 美元可能很貴,但對於那堂課來說,這並不是一個可怕的價格。