Windows XP Windows 7 Windows 2003 Windows Vista Windows教程綜合 Linux 系統教程
Windows 10 Windows 8 Windows 2008 Windows NT Windows Server 電腦軟件教程
 Windows教程網 >> Linux系統教程 >> Linux教程 >> 正確理解Linux內存占用過高的問題

正確理解Linux內存占用過高的問題

日期:2017/2/7 14:41:31      編輯:Linux教程
 

Linux開機後,使用top命令查看,4G物理內存發現已使用的多達3.2G,占用率高達80%以上:

Mem: 3889836k total, 3341868k used, 547968k free, 286044k buffers

Swap: 6127608k total, 0k used, 6127608k free, 1554888k cached

如上紅色數字部分,使用free查看結果如下:

[root@rd01 ~]# free -m

total used free shared buffers cached

Mem: 3798 3264 534 0 279 1518

-/+ buffers/cache: 1466 2332

Swap: 5983 0 5983 紅色數字部分已使用內存而已是3264M,那是不是表示系統內存就真的占用這麼多呢,這可才運行了一個網站而已,不可能就被占用這麼多啊!
注意看藍底部分,這部分表示系統高速緩存所使用的內存,這部分內存可以隨時分配給進程使用,因此,真正剩余內存應該free下534+2332=2866M,因此剩余物理內存應該為2866M,而不是534M。

因此查看目前進程正在實際被使用的內存,是used-(buffers+cache),也可以認為如果swap沒有大量使用,mem還是夠用的,只有mem被當前進程實際占用完(沒有了buffers和cache),才會使用到swap的。

Copyright © Windows教程網 All Rights Reserved