1、為什么要使用虛擬內(nèi)存 當(dāng)我們沒有多余的錢去購買大內(nèi)存的云服務(wù)器時,但是當(dāng)前服務(wù)器里面的軟件和程序運行的比較多導(dǎo)致內(nèi)存不夠用了。這個時候可以通過增加虛擬內(nèi)存來擴大內(nèi)存容量。但是在啟用虛擬內(nèi)存時,需要仔細考慮系統(tǒng)的實際需求和硬件配置,以及權(quán)衡虛擬內(nèi)存的優(yōu)缺點,考慮好利弊后在開啟虛擬內(nèi)存。 2、什么是
虛擬內(nèi)存是一種將部分物理內(nèi)存擴展到磁盤空間的技術(shù),以提供更大的內(nèi)存空間和更好的系統(tǒng)性能。在服務(wù)器內(nèi)存不足時,通過增加虛擬內(nèi)存來擴大內(nèi)存容量是一種常見的解決方案。然而,在啟用虛擬內(nèi)存時,需要仔細考慮系統(tǒng)的實際需求和硬件配置,以及權(quán)衡虛擬內(nèi)存的優(yōu)缺點。
當(dāng)服務(wù)器內(nèi)存不足時,可以通過增加虛擬內(nèi)存來擴大內(nèi)存容量。但是在啟用虛擬內(nèi)存時,需要仔細考慮系統(tǒng)的實際需求和硬件配置,以及權(quán)衡虛擬內(nèi)存的優(yōu)缺點,考慮好利弊后在開啟虛擬內(nèi)存。
虛擬內(nèi)存允許系統(tǒng)在物理內(nèi)存不足時,將不常用的內(nèi)存頁轉(zhuǎn)移到磁盤上,從而釋放物理內(nèi)存供活躍的進程使用。
使用虛擬內(nèi)存的優(yōu)點:
增加可用內(nèi)存: 虛擬內(nèi)存允許系統(tǒng)在物理內(nèi)存不足時將部分內(nèi)存數(shù)據(jù)存儲到磁盤上,從而擴展了系統(tǒng)可用的內(nèi)存空間。
仍然可以繼續(xù)運行應(yīng)用程序,避免了因內(nèi)存不足而導(dǎo)致的系統(tǒng)崩潰或應(yīng)用程序崩潰。
提高系統(tǒng)穩(wěn)定性: 虛擬內(nèi)存可以防止系統(tǒng)因內(nèi)存不足而崩潰。
支持大型程序運行: 虛擬內(nèi)存可以提供額外的內(nèi)存空間,使大型應(yīng)用程序能夠在物理內(nèi)存有限的情況下繼續(xù)運行。
靈活管理內(nèi)存: 虛擬內(nèi)存允許系統(tǒng)管理員根據(jù)實際需求動態(tài)調(diào)整交換空間的大小,優(yōu)化系統(tǒng)的性能和穩(wěn)定性。
提高系統(tǒng)響應(yīng)速度: 虛擬內(nèi)存可以減少因內(nèi)存不足而導(dǎo)致的系統(tǒng)響應(yīng)速度下降的情況。
使用虛擬內(nèi)存的弊端:
總的來說,虛擬內(nèi)存的使用可以提高系統(tǒng)的穩(wěn)定性、可用性和性能,但是在啟用虛擬內(nèi)存時,需要仔細考慮系統(tǒng)的實際需求和硬件配置,以及權(quán)衡虛擬內(nèi)存的優(yōu)缺點。
物理內(nèi)存是用于存儲正在運行的程序和數(shù)據(jù)的地方。當(dāng)應(yīng)用程序需要使用內(nèi)存時,它會向操作系統(tǒng)請求內(nèi)存分配。當(dāng)物理內(nèi)存不足時,系統(tǒng)將部分數(shù)據(jù)從物理內(nèi)存交換到磁盤上的交換區(qū)(Swap),這樣可以釋放物理內(nèi)存,以便給其他進程使用。
Swap是Linux系統(tǒng)中的一種虛擬內(nèi)存技術(shù),用于輔助物理內(nèi)存(RAM)的管理。當(dāng)物理內(nèi)存不足時,Swap提供了一種將部分內(nèi)存內(nèi)容交換到硬盤上的方法,以釋放物理內(nèi)存供其他進程使用。
swap相關(guān)使用命令:
顯示當(dāng)前啟用的交換分區(qū)和交換文件的摘要信息,包括路徑、大小和使用情況:
swapon -s
swapon -show
啟用指定的交換分區(qū)或交換文件:
swapon /opt/swapfile # 啟用交換文件
swapon /dev/vda1 # 啟用交換分區(qū)
創(chuàng)建交換分區(qū)或交換文件:
mkswap swapdata
關(guān)閉正在使用的交換分區(qū)或交換文件
swapoff /opt/swapfile # 關(guān)閉交換文件
swapoff /dev/vda1 # 關(guān)閉交換分區(qū)
多個swap設(shè)置優(yōu)先級, 優(yōu)先級相同將同時使用, 在0到32767中間選一個數(shù)字
swapon -p 0 /opt/swapfile # 交換文件路徑
通過設(shè)置交換文件設(shè)置虛擬內(nèi)存。
df -h
dd
工具來創(chuàng)建一個交換文件
dd if=/dev/zero of=/opt/swapdata bs=1024 count=16777216
參數(shù)說明:
dd
:用來創(chuàng)建交換文件。
if=/dev/zero
:輸入文件的路徑。/dev/zero是一個特殊設(shè)備文件,它會提供一系列的零字節(jié)。
of=/opt/swapdata
:輸出文件的路徑。指定了交換文件的路徑為
/opt/swapdata
。
bs=1024
:塊大小,指定
dd
命令一次傳輸?shù)臄?shù)據(jù)塊大小為1024字節(jié)。
count=16777216
:創(chuàng)建一個16GB大小的交換文件。
創(chuàng)建成功在/opt目錄生成一個swapdata文件
chown root:root /opt/swapdata # 交換文件的所有者和所屬組
chmod 600 /opt/swapdata #只有root用戶能讀寫
mkswap /opt/swapdata # 交換文件路徑
swapon /opt/swapdata
激活成功后就可以使用
swapon -s
查看交換文件的摘要信息了
# 進入/etc/fstab文件進行修改。
vim /etc/fstab
#末尾追加
/opt/swapdata swap swap defaults 0 0
對于使用多大比例內(nèi)存之后開始使用swap,在系統(tǒng)配置文件中可以通過調(diào)整參數(shù)進行修改。查看比例信息:
cat /proc/sys/vm/swappiness
該參數(shù)范圍為0-100。0 就是最大限度使用內(nèi)存,盡量不使用swap。100是積極使用swap。越高越會使用swap分區(qū)。重新配置值:
sysctl vm.swappiness=30
如需永久配置:
echo "vm.swappiness = 30" >> /etc/sysctl.conf
通過
free -h
命令查看內(nèi)存使用情況。
關(guān)閉 swap 文件
swapoff /opt/swapdata
刪除swap分區(qū)文件
rm -rf /opt/swapdata
刪除fstab文件里追加的swap分區(qū)開機自動掛載配置內(nèi)容
/opt/swapdata swap swap defaults 0 0
小編推薦閱讀
count(*)、count(1)哪個更快?面試必問:通宵整理的十道經(jīng)典MySQL必問面試題
閱讀從需求分析、產(chǎn)品設(shè)計到部署交付各階段說明
閱讀強化學(xué)習(xí)筆記之【ACE:Off-PolicyActor-CriticwithCausality-AwareEntropyRegularization】
閱讀使用MailKit在.NET Core中收發(fā)郵件的完整示例
閱讀OpenAI官方開源多智能體框架Swarm,社區(qū)反響熱烈
閱讀Vue-Vben-Admin:功能強大的Vue3后臺管理系統(tǒng)模板
閱讀深度解析Spring AI:請求與響應(yīng)機制的核心邏輯
閱讀.NET云原生應(yīng)用實踐(一):從搭建項目框架結(jié)構(gòu)開始
閱讀llama.cpp:一個適用于中小型研發(fā)企業(yè)的高性能CPU/GPU大語言模型推理框架
閱讀Windows應(yīng)急響應(yīng)-Auto病毒
閱讀本站所有軟件,都由網(wǎng)友上傳,如有侵犯你的版權(quán),請發(fā)郵件[email protected]
湘ICP備2022002427號-10 湘公網(wǎng)安備:43070202000427號© 2013~2024 haote.com 好特網(wǎng)