用戶在使用Linux服務(wù)器時(shí)可能時(shí)常出現(xiàn)負(fù)載問題。常見三大服務(wù)器負(fù)載問題有內(nèi)存空間不足而無法加載應(yīng)用,緩存文件時(shí)內(nèi)存空間不足和過于頻繁地使用內(nèi)存交換。解決這三類問題可以基于Linux內(nèi)存使用率最佳實(shí)踐優(yōu)化服務(wù)器,如將不活躍內(nèi)存移到交換區(qū)。當(dāng)然,在解決難題之前,每個(gè)獨(dú)立的負(fù)載問題要求Linux內(nèi)存分析。下面就讓我們分別看看這三大問題該如何解決。
用戶在使用Linux服務(wù)器時(shí)可能時(shí)常出現(xiàn)負(fù)載問題。常見三大服務(wù)器負(fù)載問題有內(nèi)存空間不足而無法加載應(yīng)用,緩存文件時(shí)內(nèi)存空間不足和過于頻繁地使用內(nèi)存交換。解決這三類問題可以基于Linux內(nèi)存使用率最佳實(shí)踐優(yōu)化服務(wù)器,如將不活躍內(nèi)存移到交換區(qū)。當(dāng)然,在解決難題之前,每個(gè)獨(dú)立的負(fù)載問題要求Linux內(nèi)存分析。下面就讓我們分別看看這三大問題該如何解決。
一、緩存文件時(shí)內(nèi)存空間不足
如果你感覺緩存文件可能會(huì)出現(xiàn)內(nèi)存不足的話,按照下面方法計(jì)算:如果可用緩存與緩存內(nèi)存低于總RAM的30%,那么服務(wù)器可能遭遇內(nèi)存不足。接下來檢查/proc/meminfo的內(nèi)容。如果不活躍(文件)內(nèi)存總量明顯高于緩存總量,那么服務(wù)器沒有足夠可用內(nèi)存去緩存文件。在釋放更多緩存時(shí),首先查明是何種原因?qū)е露倘薄?/span>
如果Linux載入的程序要求太多內(nèi)存的話,除了添加更多物理RAM內(nèi)存別無他法。然而,使用內(nèi)存的系統(tǒng)其它部分也可能導(dǎo)致緩存短缺。例如,將修改后的文件提交到磁盤可能需要很長(zhǎng)時(shí)間。如果是這樣,你會(huì)在投個(gè)程序中看到一個(gè)相對(duì)高的wa(等待I/O)參數(shù),在/proc/meminfo會(huì)看見Dirty參數(shù)有個(gè)相對(duì)較高的值。如果是這樣,修改磁盤性能是關(guān)鍵,能獲得更好的內(nèi)存性能。
二、內(nèi)存交換用得太頻繁
如果交換用得太多,vmstat監(jiān)控工具會(huì)顯示高si與so(換進(jìn)與換出)動(dòng)作。交換空間幾乎填滿,服務(wù)器可能的免費(fèi)內(nèi)存很低。
為了優(yōu)化Linux內(nèi)存,首先調(diào)查交換頻繁的根源。通常,如果只有不活躍內(nèi)存在交換區(qū),那就不該有壓力。在/proc/meminfo中,看交換量是否用得比不活躍內(nèi)存的量還多。如果是,活躍內(nèi)存頁(yè)交換得很好,就算Linux內(nèi)核需要經(jīng)常訪問活躍內(nèi)存頁(yè)。系統(tǒng)需要更多物理內(nèi)存。
如果交換處于壓力下,并分配了大量緩存,通過增加swappiness參數(shù),可在服務(wù)器上減輕內(nèi)存負(fù)載。更高的swappiness值讓內(nèi)核更快將內(nèi)存頁(yè)放到磁盤,減輕來自緩存的壓力,讓活躍內(nèi)存得到更多可用內(nèi)存。
更高的swappiness參數(shù)實(shí)際上降低了磁盤震蕩,震蕩通常由頁(yè)頻繁地?fù)Q入換出而引起。增加的swappiness只是確保頁(yè)移到應(yīng)該待的交換區(qū),使得服務(wù)器上的交換動(dòng)作緩慢下來。不過要實(shí)現(xiàn)這樣的目的,需要為服務(wù)器添加更多交換區(qū)。
三、內(nèi)存空間不足而無法加載應(yīng)用
讓一臺(tái)沒有足夠內(nèi)存的服務(wù)器去加載應(yīng)用,這會(huì)出現(xiàn)內(nèi)存短缺的情況。服務(wù)器會(huì)在緩沖區(qū)顯示相對(duì)有限的內(nèi)存數(shù)量,相應(yīng)地,交換空間也使用得多。最簡(jiǎn)單的方法就是添加更多內(nèi)存。不過優(yōu)化Linux內(nèi)存交換也能提升性能。確保不活躍內(nèi)存頁(yè)盡早交換出去,為所需的內(nèi)存頁(yè)騰出空間。
如何讓服務(wù)器開始快速交換?使用如下命令:echo 80 > /proc/sys/vm/swappiness。同時(shí),使用下面語(yǔ)句:vm.swappiness = 80,將參數(shù)寫入the /etc/systcl.conf file中。如果這還不能給你更多內(nèi)存加載應(yīng)用,那么就采取添加更多物理內(nèi)存給服務(wù)器。
以上就是Linux服務(wù)器常見負(fù)載問題的解決辦法。希望在今后的運(yùn)用中可以幫助更多的朋友們。
河南億恩科技股份有限公司(mszdt.com)始創(chuàng)于2000年,專注服務(wù)器托管租用,是國(guó)家工信部認(rèn)定的綜合電信服務(wù)運(yùn)營(yíng)商。億恩為近五十萬的用戶提供服務(wù)器托管、服務(wù)器租用、機(jī)柜租用、云服務(wù)器、網(wǎng)站建設(shè)、網(wǎng)站托管等網(wǎng)絡(luò)基礎(chǔ)服務(wù),另有網(wǎng)總管、名片俠網(wǎng)絡(luò)推廣服務(wù),使得客戶不斷的獲得更大的收益。
服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:
0371-60135900
虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:
0371-55621053
網(wǎng)絡(luò)版權(quán)侵權(quán)舉報(bào)電話:
0371-60135995
服務(wù)熱線:
0371-60135900