当前位置: 首页 > 网络应用技术

Haproxy群集

时间:2023-03-07 14:13:26 网络应用技术

  Haproxy是用C语言编写的免费和开源代码软件,可提供基于TCP和HTTP的高可用性,负载平衡和应用程序代理。

  LVS具有最佳性能,但相对复杂。NGINX的上游模块支持集群功能,但对于群集节点健康检查功能并不强。

  LVS在企业应用程序中具有很强的抵抗力,但存在不足

  LV不支持常规治疗,无法实现运动和静态的分离

  对于大型网站,LVS的实现配置很复杂,维护成本相对较高

  Haproxy是一个代理软件,可提供高可用性,负载平衡,并基于TCP和HTTP应用程序

  适用于大量负载的网站

  运行可以支持数以万计的并发连接请求的硬件

  可靠性和稳定性非常好,可以与硬件级别的F5负载平衡设备相提并论

  最大可以维持40,000-500,000并发连接。单位时间内处理的最大请求为20,000,最大处理能力可以达到10GIT/s

  最多支持8种负载平衡算法,还支持会话维护

  支持虚拟托管的功能,以实现Web负载平衡更灵活

  支持独特功能,例如连接拒绝和所有透明代理

  拥有强大的ACL支持,用于访问控制

  其独特的弹性二进制树数据结构已将数据结构的复杂性提高到0(1),也就是说,随着数据输入的增加,数据查询速度不会降低。

  支持客户的存储功能,减少客户端和Haproxy之间的多重握手,导致资源和费用量,以便在一个TCP连接中完成多个请求

  支持TCP加速度,零复制功能,类似于MMAP机制

  支持响应池(响应缓冲)

  支持RDP协议

  基于源的粘度,类似于NGINX的IP_HASH功能,同一客户端的请求将始终在一定时间段内的上到达的同一服务器中派遣到同一服务器

  对于更好的统计数据接口,其Web界面显示了后端每个服务器的接受,发送,拒绝,错误和其他数据的统计信息。

  有关详细的健康状态检测,网络界面中上层服务器的健康检测状态提供了一定的管理功能

  基于流量的健康评估机制

  基于HTTP的身份验证

  基于命令行的管理接口

  日志分析仪可以分析日志

  LVS根据Linux操作系统实现软负载平衡,而Haproxy和Nginx是基于第三方应用程序的软负担平衡

  LVS是一种4层次IP负载平衡技术,无法实现目录和URL转发。Haproxy和Nginx可以实现4和7层技术。Haproxy可以为TCP和HTTP应用程序提供负载平衡的综合解决方案

  LVS具有单个状态监控功能,因为它在ISO模型的四楼工作,并且Haproxy具有更丰富和强大的状态监视。它可以支持多种状态监控方法,例如端口,URL,脚本和其他状态监视方法

  Haproxy功能强大,但第四层模式的LVS负载平衡低于4 -layer模式

  NGINX主要用于Web服务器或缓存服务器

  Haproxy还支持虚拟托管

  Haproxy支持8个负载Balangers策略

  Haproxy的优点可以补充NGINX的某些缺点,例如支持会话维护,Cookie的指导以及通过获取指定的URL检测指定URL来支持后端服务器的状态。

  Haproxy类似于LVS,它只是一个负载平衡软件。在效率方面,Haproxy的负载平衡速度比NGINX具有更好的负载平衡速度。在并发处理中,它也比NGINX更好。

  Haproxy支持TCP协议的负载平衡

  Haproxy支持各种调度算法,8个最常用的

  RR算法是最简单,最常用的算法,即

  理解一个例子:有三个节点A,B,C

  第一个用户访问将分配给节点

  第二个用户访问将分配给节点B

  第三个用户访问将分配给节点C

  第四个用户访问继续分配节点A,并且查询分配访问请求以实现负载平衡效果

  最小连接编号方法,根据后端的节点连接的数量,动态分配前端请求请求

  理解一个示例:有三个节点A,B,C,每个节点的连接数为a:4 b:5 c:6

  第一个用户连接请求将分配给A,并且连接数将变为A:5 B:5 C:6

  第二个用户请求将继续分配给a,连接的数量变为a:6 b:5 c:6;然后,将向B分配新请求,每次将新请求分配给客户端,每次连接数量最少

  由于实际情况,连接a,b和c的数量将动态释放,如果发生连接数量,很难发生。

  与RR算法相比,该算法大大改善。

  基于源访问计划算法,对于服务器上的会话记录的某些方案,您可以根据源IP,Cookie等进行群集调度。

  有三个节点A,B和C可以理解。第一个访问第一个用户被分配给A,第二个用户的第一次访问被分配给B

  当第一个用户的第二次访问将继续被分配给A时,第二次访问时仍将将第二个用户分配给B。只要未重新启动负载平衡器,第一个用户将被分配给A。

  该调度算法的好处是,在维护会话时,但是当某些IP访问量很大时,负载将不平衡。

  指示根据请求URI,使用CDN使用

  表示请求的URL参数“余额URL参数”需要一个URL参数名称名称

  根据cookie(名称),锁定每个TCP请求。

  根据请求的源IP,IP哈希机制类似于NGINX。

  代表

  Web1:Nginx 192.168.44.120

  Web2:NGINX 192.168.44.130

  Haproxy服务器:192.168.44.140

  这个机器客户端

  1.一开始,没有刷新网页,也没有创建文件

  2.刷新网页

  3.LS查看日志文件是否添加

  4.使用tail命令查看日志文件内容

  原始:https://juejin.cn/post/70989486144432489479