ha-proxy是一款高性能的负载均衡软件。因为其专注于负载均衡这一些事情,因此与nginx比起来在负载均衡这件事情上做更好,更专业。
ha-proxy的特点ha-proxy 作为目前流行的负载均衡软件,必须有其出色的一面。下面介绍一下ha-proxy相对LVS,Nginx等负载均衡软件的优点。
支持tcp / http 两种协议层的负载均衡,使得其负载均衡功能非常丰富。
支持8种左右的负载均衡算法,尤其是在http模式时,有许多非常实在的负载均衡算法,适用各种需求。
性能非常优秀,基于事件驱动的链接处理模式及单进程处理模式(和Nginx类似)让其性能卓越。
拥有一个功能出色的监控页面,实时了解系统的当前状况。
功能强大的ACL支持,给用户极大的方便。
ha-proxy 配置说明 1、ha-proxy http可选的工作模式默认为 tunnel-like 模式,client – haproxy – backend server 全部是http长连接模式
http-server-close: client端维持长连接,但是与server端使用短连接, 使用 option http-server-colse设置
httpclose:client server端全部使用短连接模式,使用 option httpclose设置,同时还要添加 option forceclose,option http-prevent-keepalive 避免系统处理出错。
2、haproxy 配置文件haproxy配置文件中的参数可以由3个途径设置
启动时命令行设置
global 段设置,这些参数的作用域是整个进程
代理段设置,可以由”defaults”,”listen”,”frontend”,”backend” 组成。
配置文件的语法由许多的行组成,每一个行由关键字开始,后面紧跟0至多个参数,多个参数之间以空格分隔,如果参数中包括空格” “,”\” 需要进行转译。
3、global参数影响整个haproxy进程,通过与OS相关。在不知道如何设置时,大部分直接采用系统默认配置即可。
maxconn 比较重要,决定haproxy可同时维持的最大链接数。
daemon 是否后台运行,绝大多数都是deamon的。
userlists:
对系统做鉴权的参数,可提供统一的http 鉴权,避免使用nginx去配置。具体用法,可查看参考文档。
proxy段即是配置代理段,包括haproxy监听的端口,后端处理请求的服务配置等。可由下面的一系统配置组成:defaults,frontend,backend,listen
defaults:设置接下来的段里面配置参数的默认值。
frontend:描述一系列接收client 请求的监听socket。
backend: 描述一系统接收haproxy转发请求的后端server。
listen:描述一个完整的proxy过程,即包括frontend 和 backend,通过只用于tcp方式。
HAproxy 的详细介绍:请点这里
HAproxy 的下载地址:请点这里
推荐阅读:
Haproxy+Keepalived搭建Weblogic高可用负载均衡集群
CentOS 6.3下Haproxy+Keepalived+Apache配置笔记
Haproxy + KeepAlived 实现WEB群集 on CentOS 6