本文是負載均衡詳解的第一篇文章,介紹負載均衡算法, 硬件負載均衡。部份內容摘自讀書筆記。算法
經常使用的負載均衡算法有,輪詢,隨機,最少連接,源地址散列,加權等方式;安全
將全部請求,依次分發到每臺服務器上,適合服務器硬件同相同的場景。服務器
優勢:服務器請求數目相同;架構
缺點:服務器壓力不同,不適合服務器配置不一樣的狀況;併發
請求隨機分配到各個服務器。
優勢:使用簡單;負載均衡
缺點:不適合機器配置不一樣的場景;性能
將請求分配到鏈接數最少的服務器(目前處理請求最少的服務器)。測試
優勢:根據服務器當前的請求處理狀況,動態分配;spa
缺點:算法實現相對複雜,須要監控服務器請求鏈接數;開源軟件
根據IP地址進行Hash計算,獲得IP地址。
優勢:未來自同一IP地址的請求,同一會話期內,轉發到相同的服務器;實現會話粘滯。
缺點:目標服務器宕機後,會話會丟失;
在輪詢,隨機,最少連接,Hash’等算法的基礎上,經過加權的方式,進行負載服務器分配。
優勢:根據權重,調節轉發服務器的請求數目;
缺點:使用相對複雜;
採用硬件的方式實現負載均衡,通常是單獨的負載均衡服務器,價格昂貴,通常土豪級公司能夠考慮,業界領先的有兩款,F5和A10。
使用硬件負載均衡,主要考慮一下幾個方面:
(1)功能考慮:功能全面支持各層級的負載均衡,支持全面的負載均衡算法,支持全局負載均衡;
(2)性能考慮:通常軟件負載均衡支持到5萬級併發已經很困難了,硬件負載均衡能夠支持
(3)穩定性:商用硬件負載均衡,通過了良好的嚴格的測試,從通過大規模使用,在穩定性方面高;
(4)安全防禦:硬件均衡設備除具有負載均衡功能外,還具有防火牆,防DDOS攻擊等安全功能;
(5)維護角度:提供良好的維護管理界面,售後服務和技術支持;
(6)土豪公司:F5 Big Ip 價格:15w~55w不等;A10 價格:55w-100w不等;
缺點
(1)價格昂貴;
(2)擴展能力差;
(1)通常硬件的負載均衡也要作雙機高可用,所以成本會比較高。
(2)互聯網公司通常使用開源軟件,所以大部分應用採用軟件負載均衡;部分採用硬件負載均衡。
好比某互聯網公司,目前是使用幾臺F5作全局負載均衡,內部使用Nginx等軟件負載均衡。
以上主要從負載均衡原理,分類,算法,硬件負載均衡進行了介紹。下次分享,負載均衡詳解(三),主要介紹:軟件負載均衡(LVS,Nginx,Haproxy,Apache特色,架構),負載均衡軟件技術選型比較,應用負載均衡的問題和解決方案等方面。