您的位置:首页 > 运维架构 > Linux

HAProxy 负载均衡器

2013-12-29 15:40 316 查看
HAProxy 负载均衡器HAProxy 可以做负载均衡,同时还可对服务器健康检测,有 down 机的自动停止分发,当服务器正常后,又自动均衡到刚死过的服务器。
HAProxy的算法有如下8种:一、roundrobin,表示简单的轮询,这个不多说,这个是负载均衡基本都具备的;二、static-rr,表示根据权重,建议关注;三、leastconn,表示最少连接者先处理,建议关注;四、source,表示根据请求源IP,建议关注;五、uri,表示根据请求的URI;六、url_param,表示根据请求的URl参数'balance url_param' requires an URL parameter name七、hdr(name),表示根据HTTP请求头来锁定每一次HTTP请求;八、rdp-cookie(name),表示根据cookie(name)来锁定并哈希每一次TCP请求。我们平时应用得比较多的应该是roundrobin、source和leastconn,大家可以重点关注。
HAProyx采用的是balance source机制,它跟LVS的persistent和Nginx的ip_hash一样,是让客户机访问时始终访问后端的某一台真实的web服务器;
网友经验:
因为刚开始网站上用的是LVS+Keepalived高可用架构,后来几个朋友说用手机测试时,转发很慢,有时打不开,甚有的电脑也是这样,我尝试了一下确实如此;所以用了HAProxy+Keepalived以后发现转发速度确实快多了,手机上一拍网也没有这个问题了。

因为淘宝也在用haproxy作为负载均衡器,稳定性肯定不需要怀疑;二来在测试时发现确实相当的稳定,杀掉HAProxy进程还必须用kill -9。

HAProxy是支持虚拟主机的。

注:如果修改 haproxy.cfg 配置,想重启 haproxy 用 kill -HUP `cat logs/haproxy.pid` 是不行的。必须使用 -sf 或 -st 参数。sbin/haproxy -f haproxy.cfg -st `cat logs/haproxy.pid `

haproxy相关命令参数介绍
haproxy -f <配置文件> [-n 最大并发连接总数] [-N 每个侦听的最大并发数]
-d 前台,debug模式
-D daemon模式启动(守护进程)
-q 安静模式,不输出信息
-V 详细模式
-c 对配置文件进行语法检查

-s 显示统计数据
-l 显示详细统计数据
-dk 不使用kqueue
-ds 不使用speculative epoll
-de 不使用epoll
-dp 不使用poll
-db 禁用后台模式,程序跑在前台
-sf 程序启动后向pidlist里的进程发送FINISH信号,这个参数放在命令行的最后
-st 程序启动后向pidlist里的进程发送TERMINATE信号,这个参数放在命令行的最后
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux 负载均衡 haproxy