早期的負載均衡方案是通過dns伺服器解決的,比如將www.baidu.com對映為ip:14.215.177.38,14.215.177.39,14.215.177.40等等,這樣請求就分流到了多個伺服器上進行處理了。
但dns實現負載均衡的缺點也很明顯:
1、不能按照web伺服器的處理能力分配負載,dns負載均衡採用的是簡單的輪值負載演算法,不能區分伺服器之間的差異,只是將請求平均分配到後台的web伺服器上,因此最慢的web伺服器將成為系統的瓶頸。
2、不支援高可靠性,沒有考慮容錯,dns伺服器會將http請求分配到故障機上,導致不能相應客戶端。
3、可能會造成額外的網路問題,比如多台dns伺服器之間互動等。
因此,負載均衡的改進方案至少要滿足以下功能:
1、**請求 2、故障伺服器移除 3、伺服器恢復正常自動新增
實現以上功能又可通過硬體和軟體兩方面的改進進行解決:
可以通過使用硬體負載均衡器解決,也可以通過使用軟體如lvs,nginx,apache jk等基於linux且開源的負載均衡策略。
下面主要記錄一些主流負載均衡軟體的使用:
①apache jk:是apache提供的一款為解決大量請求而分流處理的開源軟體(使用的比較少)
②nginx:是輕量級的web伺服器/反向**伺服器
優點:1,可執行於linux,並且有windows移植版
2,佔記憶體及資源少,並且處理相應請求很快
3,具有很高的可靠性
4,安裝簡單,配置檔案簡潔
③lvs(直接就有備機方案),是乙個虛擬的伺服器集群系統,此專案在2023年5月由章文嵩博士成立,是中國國內最早出現的自由軟體專案之一。
優點:1,抗負載能力強,工作在網路第四層傳輸層,僅作請求分發之用,沒有流量,所以在效率上基本不需太過考慮
2,配置性低,沒有太多可配置的選項,所以除了增減伺服器,不需要經常空配置檔案,大大減小了人為出錯的機率
3,工作穩定,穩定性高,並且各種lvs都有雙機熱備方案,所以不用擔心均衡器本身出問題,系統整體非常穩定
4,基本上支援所有應用,因為lvs工作在網路第四層傳輸層,所以可以對幾乎所有應用做負載均衡,包括http,資料庫,聊天室等。
ps:lvs已成為2.6版本以上的linux核心的一部分,所以不需要再安裝,只需要安裝keepalived就可以了,命令:yum -y install keepalived
java負載均衡學習筆記
1 ngnix已經不流行了,現在是知識付費時代,技術也一樣,開源的免費的,無論是效能上,還是服務上,總是比商業的要差一點點。今天了解到一點新東西 青雲的負載均衡服務 qingcloud 其實現在市場上比較新的一種服務,就是青雲的負載均衡服務 我不是搞市場的,而是高技術的 今天專案經理給我講了下,負載...
集群負載均衡學習筆記
集群的應用伺服器節點通常會被設計成無狀態,使用者可以請求任何乙個節點。負載均衡器 負載均衡器根據每個伺服器節點的負載情況將使用者的請求轉到合適的伺服器上。伺服器執行的兩個部分 1.根據負載均衡演算法得到合適 的節點。2.進行 負載均衡器的作用 實現高可用 當某個節點故障時,負載均衡器會將使用者請求 ...
負載均衡 筆記
負載均衡 負載均衡是由多台伺服器以對稱的方式組成的乙個伺服器集合,每台伺服器都具有等價的地位,都可以單獨 對外提供服務而無須其他伺服器的輔助。通過某種負載分擔技術,將外部傳送來的請求均勻分配到對稱結構 的某一台伺服器上,而接收到請求的伺服器獨立的回應客戶的請求。均衡負載能夠平均分配客戶請求到伺服器陣...