Haproxy 从入门到掌握
简介
HAProxy 是一款开源且免费的反向代理软件,为基于 TCP 和 HTTP 的应用提供高可用、负载均衡和代理功能。它特别适用于流量非常大的网站,为世界上访问量最大的网站提供了强大的支持。多年来,HAProxy 已经成为事实上的标准开源负载均衡器,大多数主流的 Linux 发行版已经自带了该安装包,并且在云平台也经常被使用。
HAProxy 是一个纯粹的反向代理软件,与 nginx 不同的是 haproxy 没有 web 服务功能,而且同时支持 4 层和 7 层代理。Nginx 从 1.9.0 才开始支持 4 层代理,通过 stream 模块支持,该模块默认不会自带安装,需要编译安装的时候手动添加上这个模块。
HAProxy的核心功能:
- 负载均衡:L4 和 L7 两种模式,支持 RR/静态RR/LC/IP Hash/URI Hash/URL_PARAM Hash/HTTP_HEADER Hash等丰富的负载均衡算法;
- 健康检查:支持 TCP 和 HTTP 两种健康检查模式;
- 会话保持:对于未实现会话共享的应用集群,可通过 Insert Cookie/Rewrite Cookie/Prefix Cookie,以及上述的多种 Hash 方式实现会话保持;
- SSL:HAProxy 可以解析 HTTPS 协议,并能够将请求解密为 HTTP 后向后端传输;
- HTTP请求