一、常见的Web集群调度器
- 目前常见的Web集群调度器分为软件和硬件
- 软件通常使用开源的LVS、Haproxy、Nginx
- LVS性能最好,但是搭建相对复杂;
- Nginx的upstream模块支持集群功能,但是对集群节点健康检查功能不强,高并发没有Haproxy好
- 硬件一般使用的比较多的是F5,也有很多人使用梭子鱼、绿盟等国内产品
二、Haproxy应用分析
- LVS在企业应用中抗负载能力很强,但存在不足
- LVS不支持正则处理,不能实现动静分离
- 对于大型网站,LVS的实施配置复杂,维护成功相对较高
- Haproxy是一款可提供高可用性、负载均衡、及基于TCP和HTTP应用的代理的软件
- 适用于负载大的Web站点
- 运行在硬件上可支持数万计的并发连接的连接请求
三、Haproxy调度算法原理
Haproxy支持多种调度算法,最常用的有三种
- RR (Round Robin)
- RR算法是最简单常用的一种算法,即轮询调度
- LC(Least Connections)
- 最小连接数算法,根据后端的节点连接数大小动态分配前端请求。
- SH(Source Hashing)
- 基于来源访问调度算法,用于一些有Session会话记录在服务器端的场