什么是7层负载均衡?
2019獨角獸企業重金招聘Python工程師標準>>>
在開源PaaS Rainbond中,我們對各種應用層協議匹配不同的網絡治理插件,以實現7層負載均衡(layer 7 load balancing),例如HTTP、gRPC、Redis等協議。原因在于對于一些在線環境,我們希望可以對服務間調用實現熱更改或者更好的容錯,比方說A/B測試、灰度發布等等,必須要在7層負載均衡上完成。
那么什么是7層均衡,它跟4層負載均衡(layer 4 load balancng)有何不同?
7層負載均衡和4層負載均衡之間的區別
4層負載均衡在中間傳輸層執行,它處理消息的傳遞,但不考慮消息的內容。例如TCP是網絡上Hypertext Transfer Protocol(HTTP)流量的第四層協議。在這一過程中,4層負載均衡會將網絡數據包轉發到上游服務器,但不會檢查數據包的內容,只能通過檢查TCP流中的前幾個包來做出有限的路由決策。
7層負載均衡不同于4層負載均衡,它在高級應用層上執行,會處理每個消息的實際內容。HTTP是網絡上網站流量的主要7層協議。7層負載均衡以比4層負載均衡更復雜的方式路由網絡流量,尤其適用于基于TCP的流量(如HTTP)。7層負載均衡會終止網絡流量并讀取器中消息,它可以根據消息內容(如URL或cookie)做出負載均衡決策。隨后,7層負載均衡與選定上有服務器建立新的TCP連接并將請求寫入服務器。
7層負載均衡的好處
7層負載均衡比基于數據包的4層負載均衡更占CPU,但很少會導致服務器性能下降。7層負載均衡可以讓負載均衡器做出更明智的決策,并可以對內容進行優化和更改,如壓縮、加密等等。7層負載均衡還可以利用buffering來卸載上游服務器的慢速連接,從而提高性能。
執行7層負載平衡的組件通常被稱為反向代理服務器。
7層負載均衡示例
舉個簡單的例子,假設用戶訪問高流量網站,在會話期間,他或她可能會請求靜態內容(例如圖像或視頻)、動態內容(例如新聞訂閱源)或者交易信息(例如訂單狀態)等等。7層負載平衡允許負載均衡器根據請求本身中的消息(如內容類型)來路由請求。也就是說,我們可以將對圖像或視頻的請求路由到存儲它的服務器,并進行高度優化以提供多媒體內容;可以將諸如折扣價之類的交易信息請求路由到負責管理定價的應用服務器。借助7層負載平衡,網絡和應用程序架構師可以創建高度優化的服務器基礎架構或應用交付網絡,在保障可靠性的同時進行有效擴展。
- END -
關于Rainbond
Rainbond是一款以應用為中心的開源PaaS,由好雨基于Docker、Kubernetes等容器技術自主研發,可作為公有云或私有云環境下的應用交付平臺、DevOps平臺、自動化運維平臺和行業云平臺,或作為企業級的混合云多云管理工具、Kubernetes容器管理工具或Service Mesh微服務架構治理工具。
- Rainbond項目網站
- 試用Rainbond公有云
- 注冊或使用Demo賬號/密碼登錄:rainbond-demo/rainbond-demo
- Github
- 碼云
- 文檔
- 微信群: 添加微信“zqg5258423”并接受邀請入群
- 技術 servicemesh模式起源
- 技術 Sidecar模式:下一代微服務架構的關鍵
- 技術 南北流量和東西流量——它們是什么意思?
- 技術 Service Mesh微服務架構的崛起
- 技術 Service Mesh:什么是Sidecar模式
- 平臺 開源PaaS Rainbond v3.6.0正式發布,Service Mesh開箱即用
- 技術 解讀Rainbond ServiceMesh微服務架構_開源PaaS Rainbond
- 技術 Rainbond插件體系設計簡介_開源PaaS Rainbond
轉載于:https://my.oschina.net/zhouyq/blog/1922975
總結
以上是生活随笔為你收集整理的什么是7层负载均衡?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Maven使用详解视频课程——笔记(一)
- 下一篇: 实操:商品列表三级分类的实现方法