windows 2012 R2 發現記憶體佔用90%多

ynchyong發表於2020-10-12

經網路查詢得到2008R2 之前一些老系統的解決方法:

 

1.用RamMap 工具檢視記憶體的詳細使用情況(因widnows 2012 R2在其他網路不與網際網路連通,用的是本機執行後的截圖).

RamMap

2.選擇清空系統工作集後可以釋放一些記憶體

3.2012R2 為什麼也會出現還在研究中。。。

以前2018的解決方案: 

     Metafile可以理解為系統快取,Windows server 2008系統中,比如存在大量的檔案拷貝等磁碟io操作,系統會自動將其快取到記憶體中,這部分被佔用的記憶體在工作管理員的中未體現出來的,所以使用者會認為系統的記憶體佔用異常。同時,MetaFile預設是沒有限制的,所以系統會無限制佔用記憶體。 但是對於Windows 2012之後,作業系統會自動限制系統快取的上限從而避免實體記憶體的耗盡。

    看了圖元檔案的解釋後,發現前兩天一直在做轉移檔案的操作,幾百G的大量小檔案在不同磁碟中轉移,從而導致記憶體佔用過高,符合此解釋。至此,問題調查清楚。

Microsoft Windows Dynamic Cache的更新程式,使用者可以下載後新增到服務中,通過修改登錄檔來限制動態快取的最大值,比如設定上限為200M等,這樣系統就可以把作為快取使用的記憶體設定了上限值。

下載地址: http://www.microsoft.com/en-us/download/details.aspx?id=9258 

具體設定步驟如下:

1. 解壓後根據不同系統版本中對應的DynCache.exe檔案複製到C:\windows\system32中。

2. 以管理員身份開啟命令提示符,執行如下命令新增服務:

      sc create DynCache binPath= %SystemRoot%\System32\DynCache.exe start= auto type= own DisplayName= "Dynamic Cache Service"

3. 回到DynCache資料夾,找到DynCache.reg的登錄檔檔案匯入。

4. 開啟登錄檔,找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\DynCache\Parameters

5. 右側找到MaxSystemCacheMBytes,雙擊它,這裡我們選擇“十進位制”,在數值裡輸入要限制最大的快取數(單位是MB),輸入800就是限制快取最大為800MB,輸入0為不限制。

6. 到服務中啟動DynCache服務。

注:下載的dyncache解壓出來是有多幾個版本可選的,請選擇retail amd64的版本,不要選擇ia64(ia64表示安騰的64位處理器版本)。

相關文章