偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Linux上如何清除RAM內(nèi)存高速緩存,緩存和交換空間

系統(tǒng) Linux
像任何其他的操作系統(tǒng)一樣,GNU / Linux已經(jīng)有效地實(shí)施了內(nèi)存管理甚至更多。但是,如果有任何進(jìn)程正在蠶食你的內(nèi)存,你要清除它,Linux提供了一個方法來刷新或清除RAM緩存。

[[348712]]

像任何其他的操作系統(tǒng)一樣,GNU / Linux已經(jīng)有效地實(shí)施了內(nèi)存管理甚至更多。但是,如果有任何進(jìn)程正在蠶食你的內(nèi)存,你要清除它,Linux提供了一個方法來刷新或清除RAM緩存。

在Linux中如何清除緩存?

每一個Linux系統(tǒng)有三個選項(xiàng)來清除緩存而不中斷任何進(jìn)程或服務(wù)。1,僅清除緩存頁 

  1. sync; echo 1 > /proc/sys/vm/drop_cachessync; echo 1 > /proc/sys/vm/drop_caches 

2,清除目錄項(xiàng)和inodes 

  1. sync; echo 2 > /proc/sys/vm/drop_caches 

3,清除,緩存頁,目錄項(xiàng)和inodes 

  1. sync; echo 3 > /proc/sys/vm/drop_caches 

上述命令的說明:sync將刷新文件系統(tǒng)緩存,命令通過“;”分隔,順序執(zhí)行,shell等待終止在序列中的每一個命令執(zhí)行之前。正如內(nèi)核文檔中提到的,寫到drop_cache將清空緩存而不殺死任何應(yīng)用程序/服務(wù),echo命令做寫入文件的工作。如果你必須清除磁盤高速緩存,第一個命令在企業(yè)和生產(chǎn)環(huán)境中是最安全,“…echo 1> …”只會清除頁緩存。不建議使用上面第三個選項(xiàng)在生產(chǎn)環(huán)境中“…echo 3 >” ,除非你明確自己在做什么,因?yàn)樗鼤宄彺骓摚夸涰?xiàng)和inodes。在Linux上釋放Buffer和Cache要用到內(nèi)核是否是個好主意?當(dāng)你請求許多設(shè)定想要檢查時,如果它實(shí)際上是專門實(shí)施對I/O 廣泛的基準(zhǔn)測試,那么你可能需要清除緩存。你可以如上所示刪除緩存,無需重新啟動系統(tǒng)即無需停機(jī)。Linux被設(shè)計成它在尋找磁盤之前到磁盤緩存尋找的方式。如果它發(fā)現(xiàn)該資源在緩存中,則該請求不到達(dá)磁盤。如果我們清理緩存,磁盤緩存將沒有用處,系統(tǒng)會到磁盤上尋找資源。此外,當(dāng)清除緩存后它也將減慢系統(tǒng)運(yùn)行速度,系統(tǒng)會重新加載每一個被請求的資源再次到磁盤緩存中?,F(xiàn)在,我們將通過一個cron任務(wù)調(diào)度器創(chuàng)建一個shell腳本在每天下午2點(diǎn)自動清除RAM緩存。創(chuàng)建一個shell腳本clearcache.sh并在其中添加以下行: 

  1. #!/bin/bash# Note, we are using "echo 3", but it is not recommended in production instead use "echo 1"echo "echo 3 > /proc/sys/vm/drop_caches" 

給clearcache.sh文件設(shè)置執(zhí)行權(quán)限 

  1. # chmod 755 clearcache.sh 

現(xiàn)在,當(dāng)你需要清除RAM緩存時只需要調(diào)用腳本?,F(xiàn)在設(shè)置一個定時任務(wù)來清除RAM緩存每天在下午2點(diǎn),打開crontab進(jìn)行編輯。 

  1. # crontab -e 

添加以下行,保存并退出。 

  1. 0 3 * * * /path/to/clearcache.sh 

有關(guān)如何創(chuàng)建一個定時任務(wù),更多細(xì)節(jié)你可以查看我們的文章11 Cron Scheduling Jobs。在生產(chǎn)環(huán)境的服務(wù)器上自動清除RAM是否是一個好主意?不!它不是。想想一個情況,當(dāng)你已經(jīng)預(yù)定腳本來清除RAM緩存每天在下午2點(diǎn)。每天下午2點(diǎn)該腳本會執(zhí)行并刷新你的RAM緩存。在一天中的任何時候,您網(wǎng)站用戶的在線量可能會超過預(yù)期的,并從你的服務(wù)器請求資源。同時調(diào)度器運(yùn)行著腳本,并在高速緩存中清除一切。當(dāng)所有的用戶都從磁盤讀取數(shù)據(jù)時,這將導(dǎo)致服務(wù)器崩潰并損壞數(shù)據(jù)庫。因此,清除緩存僅在必要時并且在你的預(yù)料之中,否則你就是個Cargo Cult System Administrator。

如何清除Linux的交換空間?

如果你想清除交換空間,你可以運(yùn)行下面的命令: 

  1. # swapoff -a && swapon -a 

此外,了解有關(guān)風(fēng)險后,您可能會將上面的命令添加到cron中?,F(xiàn)在,我們將上面兩種命令結(jié)合成一個命令寫出正確的腳本來同時清除RAM緩存和交換空間。 

  1. # echo 3 > /proc/sys/vm/drop_caches && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared' 

或 

  1. su -c 'echo 3 >/proc/sys/vm/drop_caches' && swapoff -a && swapon -a && printf '\n%s\n' 'Ram-cache and Swap Cleared' 

在測試上面的命令之前,我們先運(yùn)行“free -m” 然后執(zhí)行腳本檢查緩存。

就是現(xiàn)在,如果你喜歡這篇文章,不要忘記點(diǎn)個在看與轉(zhuǎn)發(fā)分享支持一下。 

 

責(zé)任編輯:龐桂玉 來源: 馬哥Linux運(yùn)維
相關(guān)推薦

2012-08-16 11:08:20

2015-06-16 10:41:57

Linux清除內(nèi)存Buffer

2022-07-25 09:48:22

緩存數(shù)據(jù)服務(wù)

2020-07-01 08:37:31

JavaScript開發(fā)技術(shù)

2013-01-07 17:50:28

MarvellDragon

2023-06-25 18:52:48

2020-11-04 18:32:30

APTapt命令Linux

2017-10-12 11:25:01

ChromeDNS緩存

2024-08-22 12:38:03

2022-02-02 21:50:25

底層偽共享CPU

2021-06-28 14:35:36

iOSAPP緩存

2018-11-30 15:17:38

CPUCache緩存行

2021-04-19 18:56:58

大數(shù)字符串運(yùn)算

2009-08-12 10:54:54

2018-12-06 10:40:50

磁盤緩存內(nèi)存

2024-09-30 09:33:31

2011-08-25 09:32:22

亞馬遜云緩存云計算

2019-07-26 15:10:49

Windows 10屏幕緩存Windows

2021-06-25 09:55:33

Redis緩存系統(tǒng)

2010-03-01 15:07:02

Linux交換分區(qū)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號