宣告:本文參考倪鵬飛老師的《linux效能優化實踐》
一、什麼是負載均衡
1、平均負載定義
平均負載是指單位時間內,系統處於可執行狀態和不可中斷的平均程序數,也就是平均程序活躍數,與cpu使用率沒有直接關係。可執行狀態的程序,是指正在使用 cpu 或者正在等待 cpu的程序,也就是ps命令中看到的處於r(running或runable)狀態的程序;不可中斷狀態的程序則是正處於核心態關鍵流程中的程序,並且這些流程是不可打斷的,比如最常見的是等待硬體裝置的 i/o 響應,也就是我們在 ps 命令中看到的 d 狀態(uninterruptible sleep)的程序。不可中斷狀態實際上是系統對程序和硬體裝置的一種保護機制。平均負載其實就是平均活躍程序數,那麼最理想的是,每個cpu上執行乙個程序,這樣cpu能夠充分利用。比如當平均負載為2時,在只有2個cpu的系統上,每個cpu充分利用;在有4個cpu的系統上,只有一半的cpu得以利用;在1個cpu系統上,有一半的程序處於等待狀態。
2、平均負載率為多少合理
平均負載率等於cpu個數的時候是最理想的狀態,因此首先需要知道系統中cpu的個數,可以通過top命令、mpstat命令或者讀取/proc/cpuinfo檔案中讀取,例如:
# 關於 grep 和 wc 的用法請查詢它們的手冊或者網路搜尋
$ grep 'model name' /proc/cpuinfo | wc -l
2
當平均負載率高於cpu數量70%的時候,就要分析排查負載率高的原因了,一旦負載過高就可能導致程序響應速度變慢。
3、平均負載與cpu使用率
平均負載是指單位時間內處於可執行狀態和不可中斷狀態的程序數,所以,他不僅包括正在執行的程序還包括等待cpu的ji
程序和等待io的程序。而cpu使用率是cpu單位時間內繁忙情況的統計,兩者不一定一致,比如:
二、常用命令
1、top
2、uptime
3、iostat
4、mpstat
5、pidstat
三、總結
平均負載提供了乙個快速檢視系統整體效能的手段,反映了整體的負載情況。但只看平均負載本身,我們並不能直接發現,
到底是**出現了瓶頸。
什麼是負載均衡
負載均衡是高可用網路基礎架構的關鍵元件,通常用於將工作負載分布到多個伺服器來提高 應用 資料庫或其他服務的效能和可靠性。乙個沒有負載均衡的 web 架構類似下面這樣 在這裡使用者是直連到 web 伺服器,如果這個伺服器宕機了,那麼使用者自然也就沒辦法訪問了。另外,如果同時有很多使用者試圖訪問伺服器,...
什麼是負載均衡?
負載均衡是高可用網路基礎架構的關鍵元件,通常用於將工作負載分布到多個伺服器來提高 應用 資料庫或其他服務的效能和可靠性。乙個沒有負載均衡的 web 架構類似下面這樣 在這裡使用者是直連到 web 伺服器,如果這個伺服器宕機了,那麼使用者自然也就沒辦法訪問了。另外,如果同時有很多使用者試圖訪問伺服器,...
什麼是負載均衡
編輯我的收藏 本頁目錄 負載均衡 server load balancer 是將訪問流量根據 策略分發到後端多台雲伺服器 ecs例項 的流量分發控 務。負載均衡擴充套件了應用的服務能力,增強了應用的可用性。負載均衡通過設定虛擬服務位址,將新增的同一地域的多台ecs例項虛擬成乙個高效能和高可用的後端服...