l4 l7 代理_什么是四层(L4 proxy)和七层负载均衡(L7 proxy)?区别是什么? 翻译自Nginx官网...
閱讀前的小說明:
由于工作需要,本人正在研究微服務架構。而微服務的服務網格( Service Mesh )架構中,需要選擇一種 proxy 作為每個微服務之間通訊的代理。因此為了定奪微服務中常用的兩種代理,即: Nginx 和 Envoy 如何選擇,本人查閱并翻譯了Nginx官網的一系列文章,以便日后參考,也方便各位參閱。希望能借此文章,與各位大佬們多多交流,謝謝。
此外,由于本人的英文功底著實較為薄弱,因此文中若如果出現部分翻譯不當或翻譯錯誤,也希望大家批評指正,不吝賜教!
負載均衡可以在OSI( Open Systems Interconnection )網絡模型中的很多層次上被實現。在這里,我們將提供這個網絡模型中,兩種不同層次的負載均衡選擇的概覽。
四層負載均衡(Layer 4 Proxy)和七層負載均衡(Layer 7 Proxy)的區別
四層負載均衡( L4 load balancing ):
主要工作于處于OSI模型中間位置的傳輸層( transport layer ),它主要處理消息的傳遞,而不管消息的內容。在互聯網上,TCP就是HTTP傳輸方式的四層協議( Layer 4 Protocol )。四層負載均衡只針對由上游服務發送和接收的網絡包,而并不檢查包內的具體內容是什么。四層負載均衡可以通過檢查TCP流中的前幾個包,從而決定是否限制路由。
七層負載均衡( L7 load balancing ):
主要工作于處于OSI模型頂層位置的應用層( application layer ),它主要處理每條消息中的真正內容。在互聯網上,HTTP是網絡通訊中占據主導地位的七層協議( Layer 7 Protocol )。七層負載均衡在路由網絡傳輸時比四層負載均衡更加復雜和巧妙,特別適合像HTTP這種基于TCP傳輸的方式。一個七層負載均衡器終止網絡傳輸并讀取消息中的內容。它可以基于消息中內容( 比如URL或者cookie中的信息 )來做出負載均衡的決定。之后,七層負載均衡器建立一個新的TCP連接來選擇上游服務( 或者再利用一個已經存在的TCP連接,通過 HTTP keepalives 的方式,見:https://www.nginx.com/blog/http-keepalives-and-web-performance/ )并向這個服務發出請求。
七層負載均衡的優勢
七層負載均衡的CPU密集程度比基于包的四層負載均衡更高,但是在現代服務中卻極少降低其性能。七層負載均衡能夠讓均衡器做更小的負載均衡決定,并且會根據消息的內容( 比如壓縮和加密 )利用最優化方式做出改變。它運用緩存的方式來卸載上游服務較慢的連接,并顯著地提高了性能。
一個七層負載均衡的例子
讓我們來看一個簡單的例子吧:用戶訪問一個繁忙的網站。在這個用戶 session 的航向上,他或她可能會請求靜態內容——比如圖片或者視頻,動態內容——比如新聞遞送,甚至是事務型信息——比如外賣點單的狀態。七層負載均衡允許均衡器依據請求自身的信息進行路由,比如被請求內容的類型。所以現在一個針對圖片和視頻的請求可以被路由到存儲并高度優化的多媒體內容服務器上。對于事物型信息比如商品折后價,可以被路由到響應管理價格的應用服務器上。用了七層負載均衡,網絡和應用的架構師可以建立一個高速調整且高度優化的、針對需求可靠且可有效延展的服務基礎架構或應用遞送網絡。
讓 Nginx Plus 助你一臂之力!
下面是收費服務 Nginx Plus 的廣告,大家可以略過。
譯者注。
Nginx Plus 和 Nginx 可能是負載均衡領域中最好的解決方案,它被許多高訪問量的網站所使用,比如 Dropbox、Netflix 和 Zynga。全世界超過358萬個網站,包括10萬個最繁忙的主流網站,都可依靠著 Nginx Plus 和 Nginx 來快速、可靠、安全地傳送著他們的內容。
作為一個基于軟件的負載均衡器,Nginx Plus 和那些基于硬件的解決方案功能相仿,但是價格卻便宜的多。Nginx Plus 中全面的七層負載均衡功能完全能夠幫助你建設一個高度優化的應用傳送網絡。
當你將 Nginx Plus 作為一個七層負載均衡器置于你的網站或應用之前時,你就已經提高了你網站和應用的效率、可靠性和性能。 Nginx Plus 幫助你同時最大化用戶滿意度和你 IT 投資的回報。
翻譯By 田同學
希望對您的工作學習有所幫助,謝謝。
總結
以上是生活随笔為你收集整理的l4 l7 代理_什么是四层(L4 proxy)和七层负载均衡(L7 proxy)?区别是什么? 翻译自Nginx官网...的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: pythonb超分辨成像_Papers
- 下一篇: Wireshark与Nginx