国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Linux > 正文

手動釋放Linux服務器內(nèi)存(具體操作步驟)

2020-10-28 18:49:02
字體:
供稿:網(wǎng)友

在服務器運行過程中,使用free -m查看服務器內(nèi)存時,經(jīng)常會發(fā)現(xiàn)free值很小,有些同學就會很緊張,總想采取一些措施,使得free值看起來高一點,心里就比較爽一點。其實,個人覺得這完全是圖一時之快,沒什么實質(zhì)性用途。

一、大眾釋放內(nèi)存方法
1. 首先使用free -m查看剩余內(nèi)存

復制代碼 代碼如下:

linux-8v2i:~ # free -m
             total       used       free     shared    buffers     cached
Mem:          3952       2773       178          0         130        1097
-/+ buffers/cache:       1545       2406
Swap:         2055          0       2055

2. 執(zhí)行sync命令
使用sync命令以確保文件系統(tǒng)的完整性,sync 命令運行 sync 子例程,將所有未寫的系統(tǒng)緩沖區(qū)寫到磁盤中,包含已修改的 i-node、已延遲的塊 I/O 和讀寫映射文件。
復制代碼 代碼如下:

linux-8v2i:~ # sync

3. 修改/proc/sys/vm/drop_caches
復制代碼 代碼如下:

echo 3 > /proc/sys/vm/drop_caches

說明:
1>. /proc是一個虛擬文件系統(tǒng),我們可以通過對它的讀寫操作作為與kernel實體間進行通信的一種手段。也就是說可以通過修改/proc中的文件,來對當前kernel的行為做出調(diào)整。也就是說我們可以通過調(diào)整/proc/sys/vm/drop_caches來釋放內(nèi)存。

2>. 關(guān)于drop_caches的官方說明如下:
復制代碼 代碼如下:

Writing to this file causes the kernel to drop clean caches,dentries and inodes from memory, causing that memory to becomefree.

To free pagecache, use echo 1 > /proc/sys/vm/drop_caches;
to free dentries and inodes, use echo 2 > /proc/sys/vm/drop_caches;
to free pagecache, dentries and inodes, use echo 3 >/proc/sys/vm/drop_caches.

Because this is a non-destructive operation and dirty objects are not freeable, the user should run sync first.


3>. Linux內(nèi)核會將它最近訪問過的文件頁面緩存在內(nèi)存中一段時間,這個文件緩存被稱為pagecache。

4.再使用free -m查看剩余內(nèi)存,情況如下:

復制代碼 代碼如下:

linux-8v2i:~ # free -m
             total       used       free     shared    buffers     cached
Mem:          3952       1773       2325          0         0        80
-/+ buffers/cache:       1545       2406
Swap:         2055          0       2055

二、Linux內(nèi)存分析
1. 首先對free -m查看結(jié)果進行分析
復制代碼 代碼如下:

linux-8v2i:~ # free -m
             total       used       free     shared    buffers     cached
Mem:          3952       2773       178          0         130        1097
-/+ buffers/cache:       1545       2406
Swap:         2055          0       2055

各參數(shù)含義:
•total:總物理內(nèi)存
•used:已使用內(nèi)存
•free:完全未被使用的內(nèi)存
•shared:應用程序共享內(nèi)存
•buffers:緩存,主要用于目錄方面,inode值等
•cached:緩存,用于已打開的文件
•-buffers/cache:應用程序使用的內(nèi)存大小,used減去緩存值
•+buffers/cache:所有可供應用程序使用的內(nèi)存大小,free加上緩存值

其中:
•total = used + free
•-buffers/cache=used-buffers-cached,這個是應用程序真實使用的內(nèi)存大小
•+buffers/cache=free+buffers+cached,這個是服務器真實還可利用的內(nèi)存大小

2. Linux的內(nèi)存分配方式
大家都知道,Linux服務器為了提高效率,會提前申請內(nèi)存,即使這些內(nèi)存沒有被具體應用使用,Linux也會提前申請這些內(nèi)存,然后利用這些內(nèi)存做緩存用,即將剛打開的文件系統(tǒng)存入cache中,這樣對應的服務器free值會越來越少,buffers和cached會越來越大,因此給大家表象就是內(nèi)存越來越少了,大家就緊張了;其實,大家完全不用緊張,Linux服務器在發(fā)現(xiàn)內(nèi)存不足時,會自動清理cached區(qū)域,釋放內(nèi)存,然后繼續(xù)增大cache,free繼續(xù)減少。因此,那樣手動降低內(nèi)存使用率的方法,其實就是圖一時之快,呵呵。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 昭觉县| 吉林市| 曲阳县| 长沙县| 阳朔县| 宁津县| 北辰区| 兴海县| 咸阳市| 邢台县| 从化市| 灵寿县| 靖远县| 旬阳县| 山西省| 翼城县| 梅州市| 建宁县| 上栗县| 唐山市| 门头沟区| 北辰区| 葫芦岛市| 余姚市| 梁平县| 获嘉县| 淮南市| 浪卡子县| 双桥区| 潞西市| 即墨市| 余庆县| 长葛市| 青铜峡市| 常德市| 叙永县| 安新县| 广宁县| 文安县| 泸溪县| 额尔古纳市|