通過Linux命令查看系統(tǒng)平均負載的方法
1、Linux系統(tǒng)的平均負載的概念
有時候我們會覺得系統(tǒng)響應很慢,但是又找不到原因,這時就要查看平均負載了,看它是否有大量的進程在排隊等待。特定時間間隔內運行隊列中的平均進程數可以反映系統(tǒng)的繁忙程度,所以我們通常會在自己的網站或系統(tǒng)變慢時第一時間查系統(tǒng)的負載,即CPU的平均負載。
2、查看平均負載
究竟應該如何查看平均負載呢?最簡單的命令是uptime,如下所示:
11:31:11 up 11 days, 19:01, 2 users, load average: 0.02, 0.01, 0.00
目前的主流服務器都是雙四核,有相當強悍的CPU,做一般的應用服務的話,Linux系統(tǒng)的負載這塊倒不用我們擔心。
還可以用w命令來查看,順便可以查看一下系統(tǒng)當前有哪些用戶,他們占用了哪些終端,如下所示:
11:33:00 up 11 days, 19:03, 2 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/1113.57.224.3 09:032:11m 0.04s 0.04s -bash
root pts/2113.57.224.3 11:310.00s 0.02s 0.00s w
另外,還有動態(tài)命令top,這個命令也可以反映系統(tǒng)負載情況。在下面的命令提示中,我們只關心加粗字體部分。
top - 11:37:47 up 11 days, 19:08, 2 users, load average: 0.00, 0.00, 0.00
Tasks: 122 total, 1 running, 121 sleeping, 0 stopped, 0 zombie
Cpu(s): 0.1%us, 0.0%sy, 0.0%ni, 99.9%id, 0.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4044136k total, 1435504k used, 2608632k free, 274740k buffers
Swap: 8193140k total,0k used, 8193140k free, 941884k cached
上面加粗字體顯示的內容是什么意思呢?再通過uptime查看一下。
11:39:36 up 11 days, 19:16, 1 user, load average: 0.09, 0.03, 0.01
原來它所表示的是過去的1分鐘、5分鐘和15分鐘內進程隊列中的平均進程數量。
那么,如何衡量當前系統(tǒng)是否負載過高呢?可以從以下幾點來考慮。
如果每個CPU(可以按CPU核心的數量計算)當前的活動進程數不大于3,則系統(tǒng)性能良好。
如果每個CPU當前的活動進程數不大于4,表示可以接受。
如果每個CPU當前的活動進程數大于5,則系統(tǒng)性能問題嚴重。
還可以結合vmstat命令來判斷我們的系統(tǒng)是否過于繁忙,如果確定很繁忙的話,就要考慮是否更換服務器或增加CPU的個數了。總結如下:
如果r經常大于3或4,且id經常少于50,則表示CPU的負荷很重。
在上面例子中,我的服務器是PowerEdge 2850,CPU是雙核雙線程的,則0.09/2=0.045(即負載值/真實CPU個數),此系統(tǒng)的CPU負載基本可以忽略了。事實上,現在主流服務器 的CPU都很強悍,如果不是應用虛擬化等特殊場景,基本上負載都很小。
按照前面的計算公式,我所配置Nagios報警的CPU負載閾值 為CPU核心的數量(即CPU的物理個數×核數)。還是以我的服務器PowerEdge 2850為例,其CPU核心的數量為2×2=4,則設置報警值為4。這樣設置是合理的,因為畢竟不是每個應用服務器的CPU都支持多核心,畢竟整個網站中 還有些性能比較弱的服務器是用來做備份的。
相關文章
Linux系統(tǒng)下配置HTTP負載均衡系統(tǒng)以扛流量增加
隨著網絡流量的增加,服務器開始面臨繁重負載,這時有套負載均衡系統(tǒng)就顯得很重要了,下面為大家介紹下如何配置HTTP負載均衡系統(tǒng)2014-12-09Linux系統(tǒng)下使用HAProxy配置HTTP負載均衡系統(tǒng)的方法
面對突如其來的流量猛增、自生的流量增加或者是內部挑戰(zhàn)(比如硬件故障和緊急維護),我們如何能消除這些缺點呢?在大多數情況下,一套合適的負載均衡解決方案有望滿足這個2014-10-26- 這篇文章主要為大家介紹了LVS三種負載均衡方式的比較,什么是lvs?其實就是Linux虛擬服務器,是一個虛擬的服務器集群系統(tǒng)。LVS三種負載均衡分別是VS/NAT、VS/TUN和VS/DR技2014-09-18

