mac mysql 的lb_四层LB和七层LB
總結: 基于MAC地址玩的是二層(虛擬MAC地址接收請求,然后再分配到真實的MAC地址),
基于IP地址玩的是三層(虛擬IP地址接收請求,然后再分配到真實的IP地址),
基于IP地址加端口玩的是四層(虛擬IP+端口接收請求,然后再分配到真實的服務器)
基于URL玩的是七層.(虛擬的URL或主機名接收請求,然后再分配到真實的服務器)
簡單理解四層和七層負載均衡:
1.所謂四層就是基于IP+端口的負載均衡;七層就是基于URL等應用層信息的負載均衡;同理,還有基于MAC地址的二層負載均衡和基于IP地址的三層負載均衡。 換句換說,二層負載均衡會通過一個虛擬MAC地址接收請求,然后再分配到真實的MAC地址;三層負載均衡會通過一個虛擬IP地址接收請求,然后再分配到真實的IP地址;四層通過虛擬IP+端口接收請求,然后再分配到真實的服務器;七層通過虛擬的URL或主機名接收請求,然后再分配到真實的服務器。
2.所謂的四到七層負載均衡,就是在對后臺的服務器進行負載均衡時,依據四層的信息或七層的信息來決定怎么樣轉發流量。 比如四層的負載均衡,就是通過發布三層的IP地址(VIP),然后加四層的端口號,來決定哪些流量需要做負載均衡,對需要處理的流量進行NAT處理,轉發至后臺服務器,并記錄下這個TCP或者UDP的流量是由哪臺服務器處理的,后續這個連接的所有流量都同樣轉發到同一臺服務器處理。七層的負載均衡,就是在四層的基礎上(沒有四層是絕對不可能有七層的),再考慮應用層的特征,比如同一個Web服務器的負載均衡,除了根據VIP加80端口辨別是否需要處理的流量,還可根據七層的URL、瀏覽器類別、語言來決定是否要進行負載均衡。舉個例子,如果你的Web服務器分成兩組,一組是中文語言的,一組是英文語言的,那么七層負載均衡就可以當用戶來訪問你的域名時,自動辨別用戶語言,然后選擇對應的語言服務器組進行負載均衡處理。
3.負載均衡分為L4 switch(四層交換),即在OSI第4層工作,就是TCP層啦。此種Load Balance不理解應用協議(如HTTP/FTP/MySQL等等)。例子:LVS,F5。另一種叫做L7 switch(七層交換),OSI的最高層,應用層。此時,該Load Balancer能理解應用協議。例子:? haproxy,MySQL Proxy。
第七層負載均衡優點表現在如下幾個方面:
通過對HTTP報頭的檢查,可以檢測出HTTP400、500和600系列的錯誤信息,因而能透明地將連接請求重新定向到另一臺服務器,避免應用層故障。
可根據流經的數據類型(如判斷數據包是圖像文件、壓縮文件或多媒體文件格式等),把數據流量引向相應內容的服務器來處理,增加系統性能。
能根據連接請求的類型,如是普通文本、圖象等靜態文檔請求,還是asp、cgi等的動態文檔請求,把相應的請求引向相應的服務器來處理,提高系統的性能及安全性。
第七層負載均衡受到其所支持的協議限制(一般只有HTTP),這樣就限制了它應用的廣泛性,并且檢查HTTP報頭會占用大量的系統資源,勢必會影響到系統的性能,在大量連接請求的情況下,負載均衡設備自身容易成為網絡整體性能的瓶頸。
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的mac mysql 的lb_四层LB和七层LB的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 为什么说卉字不能取名
- 下一篇: mysql如何创建用户代码_MySQL创