對話企業(yè)家陶利——做企業(yè)靠 19年前,他是一個程序員,初出茅廬,經(jīng)驗不足,憑借一己之力闖世界;
省市領(lǐng)導(dǎo)蒞臨億恩科技推進電 12月22日上午,由河南省商務(wù)廳,鄭州市商務(wù)局有關(guān)領(lǐng)導(dǎo)蒞臨河南省億
怎樣選擇服務(wù)器托管商?如何 互聯(lián)網(wǎng)開展至今,服務(wù)器方面的受到越來越多人的注重,假如要停止服務(wù)器
用戶在使用Linux服務(wù)器時可能時常出現(xiàn)負載問題。常見三大服務(wù)器負載問題有內(nèi)存空間不足而無法加載應(yīng)用,緩存文件時內(nèi)存空間不足和過于頻繁地使用內(nèi)存交換。解決這三類問題可以基于Linux內(nèi)存使用率最佳實踐優(yōu)化服務(wù)器,如將不活躍內(nèi)存移到交換區(qū)。當然,在解決難題之前,每個獨立的負載問題要求Linux內(nèi)存分析。下面就讓我們分別看看這三大問題該如何解決。
一、緩存文件時內(nèi)存空間不足
如果你感覺緩存文件可能會出現(xiàn)內(nèi)存不足的話,按照下面方法計算:如果可用緩存與緩存內(nèi)存低于總RAM的30%,那么服務(wù)器可能遭遇內(nèi)存不足。接下來檢查/proc/meminfo的內(nèi)容。如果不活躍(文件)內(nèi)存總量明顯高于緩存總量,那么服務(wù)器沒有足夠可用內(nèi)存去緩存文件。在釋放更多緩存時,首先查明是何種原因?qū)е露倘薄?/span>
如果Linux載入的程序要求太多內(nèi)存的話,除了添加更多物理RAM內(nèi)存別無他法。然而,使用內(nèi)存的系統(tǒng)其它部分也可能導(dǎo)致緩存短缺。例如,將修改后的文件提交到磁盤可能需要很長時間。如果是這樣,你會在投個程序中看到一個相對高的wa(等待I/O)參數(shù),在/proc/meminfo會看見Dirty參數(shù)有個相對較高的值。如果是這樣,修改磁盤性能是關(guān)鍵,能獲得更好的內(nèi)存性能。
二、內(nèi)存交換用得太頻繁
如果交換用得太多,vmstat監(jiān)控工具會顯示高si與so(換進與換出)動作。交換空間幾乎填滿,服務(wù)器可能的免費內(nèi)存很低。
為了優(yōu)化Linux內(nèi)存,首先調(diào)查交換頻繁的根源。通常,如果只有不活躍內(nèi)存在交換區(qū),那就不該有壓力。在/proc/meminfo中,看交換量是否用得比不活躍內(nèi)存的量還多。如果是,活躍內(nèi)存頁交換得很好,就算Linux內(nèi)核需要經(jīng)常訪問活躍內(nèi)存頁。系統(tǒng)需要更多物理內(nèi)存。
如果交換處于壓力下,并分配了大量緩存,通過增加swappiness參數(shù),可在服務(wù)器上減輕內(nèi)存負載。更高的swappiness值讓內(nèi)核更快將內(nèi)存頁放到磁盤,減輕來自緩存的壓力,讓活躍內(nèi)存得到更多可用內(nèi)存。
更高的swappiness參數(shù)實際上降低了磁盤震蕩,震蕩通常由頁頻繁地換入換出而引起。增加的swappiness只是確保頁移到應(yīng)該待的交換區(qū),使得服務(wù)器上的交換動作緩慢下來。不過要實現(xiàn)這樣的目的,需要為服務(wù)器添加更多交換區(qū)。
三、內(nèi)存空間不足而無法加載應(yīng)用
讓一臺沒有足夠內(nèi)存的服務(wù)器去加載應(yīng)用,這會出現(xiàn)內(nèi)存短缺的情況。服務(wù)器會在緩沖區(qū)顯示相對有限的內(nèi)存數(shù)量,相應(yīng)地,交換空間也使用得多。最簡單的方法就是添加更多內(nèi)存。不過優(yōu)化Linux內(nèi)存交換也能提升性能。確保不活躍內(nèi)存頁盡早交換出去,為所需的內(nèi)存頁騰出空間。
如何讓服務(wù)器開始快速交換?使用如下命令:echo 80 > /proc/sys/vm/swappiness。同時,使用下面語句:vm.swappiness = 80,將參數(shù)寫入the /etc/systcl.conf file中。如果這還不能給你更多內(nèi)存加載應(yīng)用,那么就采取添加更多物理內(nèi)存給服務(wù)器。
以上就是Linux服務(wù)器常見負載問題的解決辦法。希望在今后的運用中可以幫助更多的朋友們。