HAProxy是什么?
HAProxy是一种高性能的开源的并且免费的负载均衡的软件,可以运行大部分主流的Linux操作系统上,HAProxy提供了TCP和HTTP两种负载均衡的能力,具备丰富的功能,版本更新快

haproxy是属于基于七层代理的负载均衡代理方案,同样支持对四层模拟TCP的负载,功能强大;其中七层应用层是基于Http协议进行代理调度,四层是基于tcp四层协议层进行调度,支持(TLS的https和Mysql调度)
提供高可用性、负载均衡以及基于TCP和HTTP应用代理、免费、开源、可靠解决方案。适用于负载大web站点

实现了基于事件驱动、单一进程模型,此模型支持数千级别的并发连接
haproxy不能实现ha高可用,但是可以基于健康检查,来进行监控后端节点的状态。

haproxy只是httpd协议的反向代理,不提供缓存加速功能。但是反向代理功能强大,额外支持四层负载
HAProxy 相对其他负载均衡器主要优点:
HAProxy 是支持虚拟主机,通过 frontend 指令来实现
能够补充 Nginx 的一些缺点,比如 Session 的保持,Cookie 引导等工作(请求引导到同一台服务器)
支持 url 检测,后端的服务器出问题的检测会有很好的帮助
跟 LVS 一样,本身仅仅就只是一款负载均衡软件;单纯从效率上来讲 HAProxy 更会比Nginx 有更出色的负载均衡速度,在并发处理上也是优于 Nginx。
HAProxy 可以对 Mysql 读进行负载均衡,对后端的 MySQL 节点进行检测和负载均衡,不过在后端的 MySQL slaves 数量超过 10 台时性能不如 LVS,所以更推荐 LVS+Keepalived。

能对请求的 url 和 header 中的信息做匹配,有比 lvs 有更好的 7 层实现
注:haproxy基于七层(应用层)负载,实现反向代理,必须监听在与之对应的应用程序端口上。和Nginx代理一样,基于多前端、交叉的方式、调度后端的调度方式

文档更新时间: 2024-02-28 13:05   作者:月影鹏鹏