Nginx 理解四层/七层负载均衡
负载均衡是当有大量的并发请求来到服务器的时候,我们能够把这些请求分配到多台计算机节点上,让更多的节点来处理请求和响应,如此就可以大大缩减用户请求的等待时间。
1 四层/七层负载均衡
OSI网络模型共分为七层,即从用户发起请求到服务器接收需要经过七道工序。七层从上往下分别是应用层、表示层、会话层、传输层、网络层、数据链路层、物理层。
所谓负载均衡分层,与OSI七层模型相对应。其中七层负载均衡是指Nginx在应用层提供服务,四层表示Nginx在传输层提供服务。
1.1 四层负载均衡
四层负载均衡是基于IP+端口的负载均衡,原理是通过转发请求到后台的服务器,它只负责转发并且会记录当前连接是由哪个服务器处理的,后续这个连接的请求就由同一台服务器去处理,其实就是相当于长连接,这个长连接一旦打开就会一直处理连接的状态,它的性能就会非常的高了,四层是基于传输层的,主要基于tcp和udp。
-
F5硬负载均衡:商业级别,很贵
-
LVS四层负载均衡:它是Linux内核的负载,和协议没什么关系,主要是负责转发一些 请求的,它是基于CS端的
-
HA proxy四层负载均衡:同样支持转发功能,并且灵活性非常高,除了做四层以外也能够做七层的负载均衡
-
Nginx 四层负载均衡:既可以做负载均衡也可以做七层负载均衡,可以用于实现四层协议的转发、代理等等
1.2 七层负载均衡
是基于URL或IP的负载均衡,是基于应用层的,是针对http协议的一个负载均衡。
-
nginx七层负载均衡 对http协议或者邮箱协议做负载均衡,性能强劲
-
Haproxy 七层负载均衡 灵活性很高
-
apache七层负载均衡协议 灵活性不高,并发达到百万级的话性能会非常地差
总结:
- 四层做负载一般会使用LVS,Nginx更适合做七层负载。
- 四层负载均衡主要适用于处理基于tcp、udp协议,重点是用于转发请求,并不是处理请求;七层一般用于处理http协议的,适用于web服务器;七层是会处理请求的,比如它可以去处理静态资源的一些内容,可以进行压缩或者缓存。
1.3 DNS地域负载均衡
由DNS服务器来识别,根据IP地址采用就近原则访问最近的服务器。
版权声明:本文为博主原创文章,未经博主允许不得转载。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· 【自荐】一款简洁、开源的在线白板工具 Drawnix