相關(guān)關(guān)鍵詞
關(guān)于我們
最新文章
解決Linux下php-fpm進程過多導(dǎo)致內(nèi)存耗盡問題

最近,發(fā)現(xiàn)個人博客的Linux服務(wù)器,數(shù)據(jù)庫服務(wù)經(jīng)常掛掉,導(dǎo)致需要重啟,才能正常訪問,極其惡心,于是決心開始解決問題,解放我的時間和精力(我可不想經(jīng)常出問題,然后人工重啟,費力費時)。
分析問題
發(fā)現(xiàn)問題以后,首先使用 free -m
指令查看當(dāng)前服務(wù)器執(zhí)行狀況:
可以看到我的服務(wù)器內(nèi)存是2G的,但是目前可用內(nèi)存只剩下70M,內(nèi)存使用率高達92%,很有可能是內(nèi)存使用率過高導(dǎo)致數(shù)據(jù)庫服務(wù)掛斷。
繼續(xù)看詳細(xì)情況,使用 top
指令:
然后再看指令輸出結(jié)果中詳細(xì)列出的進程情況,重點關(guān)注第10列內(nèi)存使用占比:
發(fā)現(xiàn)CPU使用率不算高,也排除了CPU的問題,另外可以看到數(shù)據(jù)庫服務(wù)占用15.2%的內(nèi)存,內(nèi)存使用過高時將會擠掉數(shù)據(jù)庫進程(占用內(nèi)存最高的進程),導(dǎo)致服務(wù)掛斷,所以我們需要查看詳細(xì)內(nèi)存使用情況,是哪些進程耗費了這么多的內(nèi)存呢?
使用指令:
ps auxw|head -1;ps auxw|sort -rn -k4|head -40