阅读前的小说明:
由于工作需要,本人正在研究微服务架构。而微服务的服务网格( 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 )。七