[轉載]調整虛擬記憶體

来源:http://www.cnblogs.com/kerrycode/archive/2016/01/22/5151726.html
-Advertisement-
Play Games

本文轉自調整虛擬記憶體,支持原創、尊重原創,分享知識!個人發現有些翻譯不當的地方,稍微做了下修改、調整。如果英文足夠NB,建議閱讀英文。 虛擬記憶體通常被進程、文件系統緩存以及內核消耗。虛擬記憶體的使用由很多因素決定,受以下參數影響: swappiness 參數值可為 0-100,控制系統 swap 的使...


本文轉自調整虛擬記憶體,支持原創、尊重原創,分享知識!個人發現有些翻譯不當的地方,稍微做了下修改、調整。如果英文足夠NB,建議閱讀英文。

 

虛擬記憶體通常被進程、文件系統緩存以及內核消耗。虛擬記憶體的使用由很多因素決定,受以下參數影響:
swappiness
參數值可為 0-100,控制系統 swap 的使用程度。高數值可優先系統性能,在進程不活躍時主動將其轉換出物理記憶體。低數值可優先互動性並儘量避免將進程轉換處物理記憶體,並降低反應延遲。預設值為 60
 

Warning

Since RHEL 6.4, setting swappiness=0 more aggressively avoids swapping out, which increases the risk of OOM killing under strong memory and I/O pressure. A low swappiness value is recommended for database workloads. For example, for Oracle databases, Red Hat recommends a swappiness value of 10.  
min_free_kbytes
保證系統間可用的最小 KB 數。這個值可用來計算每個低記憶體區的高水位線,然後為其大小按比例分配保留的可用頁。
 

可破壞您系統的極限值

設定這個參數時請小心,因為該值過低和過高都有問題。 min_free_kbytes 太低可防止系統重新利用記憶體。這可導致系統掛起並讓 OOM 殺死多個進程。 但將這個參數值設定太高(占系統總記憶體的 5-10%)會讓您的系統很快會記憶體不足。Linux 的設計是使用所有可用 RAM 緩存文件系統數據。設定高 min_free_kbytes 值的結果是在該系統中花費太多時間重新利用記憶體。
dirty_ratio
規定百分比值。當臟數據組成達到系統記憶體總數的這個百分比值後開始寫下臟數據(pdflush)。預設值為 20
dirty_background_ratio
規定百分比值。當臟數據組成達到系統記憶體總數的這個百分比值後開始在後端寫下臟數據(pdflush)。預設值為 10
drop_caches
將這個值設定為 12 或者 3 讓內核放棄各種頁緩存和 slab 緩存的各種組合。
1
系統無效並釋放所有頁緩衝記憶體。
2
系統釋放所有未使用的 slab 緩衝記憶體。
3
系統釋放所有頁緩衝和 slab 緩衝記憶體。
這是一個非破壞性操作。因為臟對象不能被釋放,建議設置參數值之前運行 sync命令。
 

重要

不建議在產品環境中使用 drop_caches 釋放記憶體。
要在調節時臨時設定這些值,請將所需值 echo 到 proc 文件系統中的適當文件中。例如:要將 swappiness 臨時設定為 50,請運行:
# echo 50 > /proc/sys/vm/swappiness
要永久設定這個值,則需要使用 sysctl 命令。有關詳情請參考《部署指南》,網址為http://access.redhat.com/site/documentation/Red_Hat_Enterprise_Linux/
您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 1. 安裝環境 linux版本:CentOSrelease6.2(Final) pg版本 :postgresql-9.5.02. pg資料庫下載地址--http://www.postgresql.org/ftp/source/3. 安裝依賴包>yum installgcc*>yum insta...
  • 前言今天在在清理資料庫,是MS SQL Server,其中用到分離資料庫文件。在這過程中,出現了一個小小的問題:誤將資料庫日誌文件刪除了,然後數據就打不開了,除了離線,其他操作都報錯。資料庫分離常規方法此方法是常規慣用的方式,多步驟。如圖所示:粗暴方法此方法簡單粗暴,非常實用,一條SQL語句就搞定了...
  • 一直想在 Linux 上使用 MONO 試試運行 Rafy,最近因為業務需要,總算是真正地試驗了一次。下麵是本次部署記錄的一些要點。 Linux 這次部署,我是和兩位同事一起來試驗的。由於我們對 Linux 都不太熟悉(多年前曾經用過很少一段時間的 RedHat,那些命令現在也早已忘記了,哈。),所...
  • 本文由ilanniweb提供友情贊助,首發於爛泥行天下想要獲得更多的文章,可以關註我的微信ilanniweb公司的業務是使用tomcat做web容器,為了更有效的利用伺服器的性能,我們一般部署多個tomcat做業務的負載均衡。一、業務需求目前一臺伺服器上,部署了4個tomcat,也就相當於4個節點。...
  • 上一篇,運用 Linux 的 sysfs,控制本機上的 LED 燈,usr0 至 usr3,這次用 GPIO 控制外部的電路,點亮 LED 燈。 這次的全部材料: BBB 一臺 購買 BBB 自帶的 USB 數據線 麵包板一塊 470Ω 三枚(至少一枚) 白、紅、黃、綠 LED 燈各一個(至少一個)...
  • 一.概述 barrier(屏障)與互斥量,讀寫鎖,自旋鎖不同,它不是用來保護臨界區的。相反,它跟條件變數一樣,是用來協同多線程一起工作!!!條件變數是多線程間傳遞狀態的改變來達到協同工作的效果。屏障是多線程各自做自己的工作,如果某一線程完成了工作,就等...
  • linux回收站機制
  • 這個問題困擾了我,可能有兩個原因。1、文件夾許可權不夠,至少也要給出 USERS 組的可讀可寫許可權;2、文件夾的磁碟滿了,文件寫不進去了;如果是這個不能創建和寫的問題,很大的概率就是文件的許可權。沒有網上一大堆的解釋。改變方法:1 #chown-Rmysql:mysql/usr/local/mysql/...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...