负载均衡总结

四层负载均衡(基于IP+端口的负载均衡)

实现四层负载均衡的软件有:

  • F5:硬件负载均衡器,功能很好,但是成本很高。
  • lvs:重量级的四层负载软件
  • nginx:轻量级的四层负载软件,带缓存功能,正则表达式较灵活(1.9)
  • haproxy:模拟四层,七层转发,较灵活



七层的负载均衡(基于虚拟的URL或主机IP的负载均衡)

  1. 在四层负载均衡的基础上(没有四层是绝对不可能有七层的),再考虑应用层的特征,比如同一个Web服务器的负载均衡,除了根据VIP加80端口辨别是否需要处理的流量,还可根据七层的URL、浏览器类别来决定是否要进行负载均衡。
  2. 实现七层负载均衡的软件有:
    • haproxy:天生负载均衡技能,全面支持七层代理,会话保持,标记,路径转移;
    • nginx:只在http协议和mail协议上功能比较好,性能与haproxy差不多;
    • apache:功能较差
    • Mysql proxy:功能尚可。


参考: https://www.cnblogs.com/readygood/p/9757951.html 四层和七层负载均衡的特点及常用负载均衡 nginx, haproxy, Lvs


https://www.cnblogs.com/csguo/p/7542944.html arp协议

四层负载与七层负载的区别

四层:

  • 基于IP地址加端口,虚拟IP+端口接收请求,然后再分配到真实的服务器
  • 配置负载均衡设备上服务类型为tcp/udp,负载均衡设备将只解析到4层,负载均衡设备与client三次握手之后就会和RS建立连接;
  • 四层监听关注的重点是长连接的并发连接数
  • 类似 路由器
  • 复杂的低,容易配置
  • 安全性相对要低
  • 高性能,无需解析内容
  • 缺点: 软件本身不支持正则表达式处理,不能做动静分离

七层:

  • 基于URL,虚拟的URL或主机名接收请求,然后再分配到真实的服务器
  • 配置负载均衡设备服务类型为http/ftp/https等,负载均衡设备将解析报文到7层,在负载均衡设备与client三次握手之后,只有收到对应七层报文,才会跟RS建立连接。
  • 七层监听关注的重点是QPS的性能
  • 性能: 中,需要算法识别 URL,Cookie 和 HTTP head 等信息
  • 安全性高
  • 额外功能 会话保持,图片压缩,等
  • 类似代理服务器
  • 缺点: 对设备要求高

总结:从上面的对比看来四层负载与七层负载最大的区别就是效率与功能的区别。四层负载架构设计比较简单,无需解析具体的消息内容,在网络吞吐量及处理能力上会相对比较高,而七层负载均衡的优势则体现在功能多,控制灵活强大。在具体业务架构设计时,使用七层负载或者四层负载还得根据具体的情况综合考虑
https://www.cnblogs.com/la0jin/p/15027613.html 四种模式

LVS相关术语

  • DS:Director Server 指的是前端负载均衡器节点
  • RS:Real Server 后端真实工作的服务
  • VIP: 外部 直接面向用户请求,作为用户请求得目标的IP地址
  • DIP:Director Server IP,主要用于内部主机通讯的IP地址
  • RIP:Real Server IP,后端服务器的IP地址
  • CIP:Client IP,访问客户端的IP地址

lvs四种工作模式

  • dr:直连路由模式
  • tun:隧道模式
  • nat:路由转发模式
  • fullnat模式
相关推荐
力姆泰克27 分钟前
看电动缸是如何提高农机的自动化水平
大数据·运维·服务器·数据库·人工智能·自动化·1024程序员节
BPM_宏天低代码33 分钟前
低代码 BPA:简化业务流程自动化的新趋势
运维·低代码·自动化
sun0077001 小时前
拷贝 cp -rdp 和 cp -a
linux·运维·服务器
wowocpp1 小时前
ubuntu 22.04 server 安装 anaconda3
linux·运维·ubuntu
tingting01192 小时前
Linux 普通用户禁用sudo su - 命令
linux·运维·服务器
IT-民工211102 小时前
CI/CD 实践总结
运维·ci/cd·自动化
dessler2 小时前
Linux系统-rocky系统安装
linux·运维·后端
写代码的学渣2 小时前
Linux云计算个人学习总结(一)
linux·运维·云计算
没有名字的小羊3 小时前
二.Linux文件与目录管理
linux·运维·服务器
头真的要秃啦3 小时前
Linux 无名管道
linux·运维·算法