负载均衡可在开放系统互连(OSI)参考模型的不同网络层执行。下面概述该模型中两个不同层的两种负载均衡方案。

第4层负载均衡与第7层负载均衡的区别

第4层负载均衡在中间的传输层运行。该层负责消息传递,不考虑消息内容。传输控制协议(TCP)是互联网超文本传输协议(HTTP)流量所使用的第4层协议。第4层负载均衡器仅在客户端与上游服务器之间转发网络数据包,不检查数据包内容。它们可以通过检查TCP流中的前几个数据包,做出有限的路由决策。

第7层负载均衡在较高层级的应用层运行,负责处理每条消息的实际内容。HTTP是互联网网站流量中主要的第7层协议。第7层负载均衡器采用比第4层负载均衡器复杂得多的方式路由网络流量,尤其适用于HTTP等基于TCP的流量。第7层负载均衡器会终止网络流量并读取其中的消息。它可以根据消息内容(例如URL或Cookie)做出负载均衡决策。然后,它会与选定的上游服务器建立新的TCP连接(或通过HTTP持久连接复用现有连接),并将请求写入服务器。

第7层负载均衡的优势

第7层负载均衡比基于数据包的第4层负载均衡占用更多CPU资源,但在现代服务器上很少会导致性能下降。第7层负载均衡可让负载均衡器做出更智能的负载均衡决策,并对内容进行优化和更改(例如压缩和加密)。它利用缓冲机制,减轻上游服务器处理慢速连接的负担,从而提升性能。

执行第7层负载均衡的设备通常称为反向代理服务器。

第7层负载均衡示例

来看一个简单的示例。用户访问一个高流量网站。在会话期间,用户可能会请求图像或视频等静态内容、新闻源等动态内容,甚至订单状态等事务信息。第7层负载均衡允许负载均衡器根据请求本身包含的信息(例如所请求的内容类型)来路由请求。因此,图像或视频请求可以路由到存储相应内容且经过高度优化、适合提供多媒体内容的服务器。折扣价格等事务信息请求可以路由到负责管理定价的应用服务器。借助第7层负载均衡,网络和应用架构师可以构建经过精细调优和优化的服务器基础设施或应用交付网络,使其既可靠,又能高效扩展以满足需求。

NGINX如何提供帮助

NGINX Plus和NGINX是出色的负载均衡解决方案,广泛应用于Dropbox、Netflix和Zynga等高流量网站。全球超过3.5亿个网站依靠NGINX Plus和NGINX Open Source快速、可靠且安全地交付内容。

作为一款基于软件的负载均衡器,NGINX Plus的成本远低于功能相近的硬件解决方案。NGINX Plus提供全面的负载均衡功能,可帮助您构建高度优化的应用交付网络。

在服务器集群前部署NGINX Plus作为负载均衡器,可提升整个网站的效率、性能、可靠性和扩展能力。NGINX Plus有助于提高客户满意度,并提升IT投资回报。