一、什麼是Load Average?
系統負載(System Load)是系統CPU繁忙程度的度量,即有多少進程在等待被CPU調度(進程等待隊列的長度)。
平均負載(Load Average)是一段時間內系統的平均負載,這個一段時間一般取1分鐘、5分鐘、15分鐘。
二、如何查看Load?
top,uptime,w等命令都可以查看系統負載:
$ uptime
18:13:13 up 1 day, 6:56, 1 user, load average: 2.77, 1.82, 1.47
如上所示,dev02機器1分鐘平均負載,5分鐘平均負載,15分鐘平均負載分別是1.5、2.5、5.5
三、Load的數值是什麼含義?
把CPU比喻成一條(單核)馬路,進程任務比喻成馬路上跑着的汽車,Load則表示馬路的繁忙程度。
Load小於1:不堵車,汽車在馬路上跑得遊刃有餘:
[Load<1,單核]
Load等於1:馬路已無額外的資源跑更多的汽車了:
[Load==1,單核]
Load大於1:汽車都堵着等待進入馬路:
[Load>1,單核]
如果有兩個CPU,則表示有兩條馬路,此時即使Load大於1也不代表有汽車在等待:
[Load==2,雙核,沒有等待]
四、什麼樣的Load值得警惕(單核)?
Load < 0.7時:系統很閒,馬路上沒什麼車,要考慮多部署一些服務
0.7 < Load < 1時:系統狀態不錯,馬路可以輕鬆應對
Load == 1時:系統馬上要處理不多來了,趕緊找一下原因
Load > 5時:馬路已經非常繁忙了,進入馬路的每輛汽車都要無法很快的運行
五、不同Load值說明什麼問題?
結合具體情況具體分析:
1)1分鐘Load>5,5分鐘Load<1,15分鐘Load<1:短期內繁忙,中長期空閒,初步判斷是一個**“抖動”或者是“擁塞前兆”**
2)1分鐘Load>5,5分鐘Load>1,15分鐘Load<1:短期內繁忙,中期內緊張,很可能是一個**“擁塞的開始”**
3)1分鐘Load>5,5分鐘Load>5,15分鐘Load>5:短中長期都繁忙,系統**“正在擁塞”**
4)1分鐘Load<1,5分鐘Load>1,15分鐘Load>5:短期內空閒,中長期繁忙,不用緊張,系統**“擁塞正在好轉”**
六、Load總結
[Load<1,單核]
[Load==1,單核]
[Load>1,單核]
[Load==2,雙核]