lvs、Nginx和haproxy比较

  1. 云栖社区>
  2. 博客>
  3. 正文

lvs、Nginx和haproxy比较

余二五 2017-11-14 17:46:00 浏览480
展开阅读全文

硬件厂家:NetScaler、F5、Radware和Array

软件:LVS、Nginx、HAProxy

 

LVS:

  • 工作在第4层,没有网络流量,抗负载能力强,对于服务器的硬件要求除了网卡外,其他没有太多要求;

  • 配置性较低,同时减少人为出错的原因;

  • 有双机热备LVS+Keepalived和LVS+Heartbeat,用的多是LVS/DR+keepalived;

  • 没有流量,均衡器I/0不会受大流量影响;

  • 对所有应用都可以做负载均衡,如其他应用(mysql)做负载均衡;

  • 存在虚拟IP概念,需要向IDC多申请一个IP来做虚拟IP

  • 不支持正则;

  • 不能做动静分离,很多网站有较强的要求;

  • 网站庞大的话,配置维护复杂


NGINX:

  • 工作在7层上,可以针对http应用做一些分流策略,如域名、目录结构;

  • 支持正则,比HAProxy更灵活,大众喜欢的原因之一;

  • 网络依赖小,能ping通就能实现负载均衡;

  • 安装配置简单;

  • 承受高负载,一般有几万的并发量;

  • 通过端口检测服务器内部故障,如返回状态码、超时等,再将失败请求转发给另一节点;

  • 不仅是负载均衡/反向代理服务器,还是web服务器;

  • 做为反向代理加速器,比squid更快;

  • 缺陷是不能通过URI检测故障;

  • 仅仅支持http和email,有局限性;

  • 三种调度默认算法: 轮询、weight以及ip_hash(可以解决会话保持的问题);

  • 支持第三方的fair和url_hash等调度算法


HAProxy:

  • 工作在7层上,支持虚拟主机;

  • 弥补Nginx的缺陷,支持Session的保持,Cookie的引导等;

  • 本身就是负载均衡服务器,并发和速率优于Nginx;

  • 对mysql读进行负载均衡,支持节点检测,一般超过10台用LVS+keepalived;

  • 支持多种算法:动态加权轮循(Dynamic Round Robin)、加权源地址哈希(Weighted Source Hash)、加权URL哈希、加权参数哈希(Weighted Parameter Hash)










本文转自 huangzp168 51CTO博客,原文链接:http://blog.51cto.com/huangzp/1915678,如需转载请自行联系原作者

网友评论

登录后评论
0/500
评论
余二五
+ 关注