linux服务器之LVS、Nginx和HAProxy负载均衡器对比总结

 更新时间:2014年03月18日 14:49:45   作者:  
这篇文章主要介绍了linux服务器之LVS、Nginx和HAProxy负载均衡器对比,需要的朋友可以参考下
LVS特点:

1.抗负载能力强,使用IP负载均衡技术,只做分发,所以LVS本身并没有多少流量产生;
2.稳定性、可靠性好,自身有完美的热备方案;(如:LVS+Keepalived)
3.应用范围比较广,可以对所有应用做负载均衡;
4.不支持正则处理,不能做动静分离。

常用四种算法:

1.rr:轮叫,轮流分配到后端服务器;
2.wrr:权重轮叫,根据后端服务器负载情况来分配;
3.lc:最小连接,分配已建立连接最少的服务器上;
4.wlc:权重最小连接,根据后端服务器处理能力来分配。
可以采用ipvsadm –p(persistence)来保持session,默认是300/s

Nginx特点:

1.工作在7层,可以对做正则规则处理;(如:针对域名、目录进行分流)
2.配置简单,能ping通就能进行负载功能,可以通过端口检测后端服务器状态,不支持url检测;
3.抗高并发,采用epoll网络模型处理客户请求;
4.只支持HTTP和EMail,应用范围比较少;
5.nginx主要是HTTP和反向代理服务器,低系统资源消耗。

常用四种算法:

1.RR:(默认)轮询,轮流分配到后端服务器;
2.weight:根据后端服务器性能分配;
3.ip_hash:每个请求按访问ip的hash结果进行分配,并发小时合适,解决session问题;
4.fair:(扩展策略),默认不被编译nginx内核,根据后端服务器响应时间判断负载情况,选择最轻的进行处理。

HAProxy特点:

1.支持两种代理模式:TCP(四层)和HTTP(七层),支持虚拟主机;
1.配置简单,支持url检测后端服务器状态;
2.仅做负载均衡软件使用,在高并发情况下,处理速度高于nginx;
3.TCP层多用于Mysql从(读)服务器负载均衡。

四种常用算法:

1.roundrobin:轮询,轮流分配到后端服务器;
2.static-rr:根据后端服务器性能分配;
3.leastconn:最小连接者优先处理;
4.source:根据请求源IP,与Nginx的IP_Hash类似。
为什么要解决session会话呢?

负载均衡环境下,每个用户都有可能不固定的访问后端服务器,在有些应用情况下,是必须要求在一定时间内同一用户访问的所有请求都分配给后端同一台服务器去处理,例如:电子商务网站,用户注册页面等,一刷新页面,就会分配到后端的另一台服务器上,那刚才的页面上的信息也都没了,这种情况下,分配同一台服务器处理请求是至关重要的!

本文出自 ““企鹅”那点事儿” 博客

相关文章

  • Centos6.5 ssh配置与使用教程

    Centos6.5 ssh配置与使用教程

    这篇文章主要介绍了Centos6.5 ssh配置与使用教程的相关资料,非常不错具有参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • 虚拟机中CentOS7设置固定IP地址的方法

    虚拟机中CentOS7设置固定IP地址的方法

    这篇文章主要介绍了虚拟机中CentOS7设置固定IP地址的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-12-12
  • Linux (Ubuntu 18.04) 下安装vim编辑器的方法

    Linux (Ubuntu 18.04) 下安装vim编辑器的方法

    这篇文章主要介绍了Linux (Ubuntu 18.04) 下安装vim编辑器的方法,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-07-07
  • Ubuntu 18.04上安装Apache、MySQL、PHP、LAMP的完整教程

    Ubuntu 18.04上安装Apache、MySQL、PHP、LAMP的完整教程

    这篇文章主要介绍了Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP的完整教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12
  • 虚拟机中Linux新手入门配置IP以及重启网络

    虚拟机中Linux新手入门配置IP以及重启网络

    这篇文章主要为大家详细介绍了虚拟机中Linux新手入门配置IP以及重启网络的方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-03-03
  • Mysql常用命令 详细整理版

    Mysql常用命令 详细整理版

    MySQL是一个快速的、多线程、多用户和健壮的SQL数据库服务器。MySQL服务器支持关键任务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。
    2010-12-12
  • ubuntu 20.04上搭建LNMP环境的方法步骤

    ubuntu 20.04上搭建LNMP环境的方法步骤

    这篇文章主要介绍了ubuntu 20.04上搭建LNMP环境的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • Apache Pulsar集群搭建部署详细过程

    Apache Pulsar集群搭建部署详细过程

    这篇文章主要介绍了Apache Pulsar集群搭建过程,搭建Pulsar集群至少需要3个组件:ZooKeeper集群、BookKeeper集群和Broker集群,本文给大家介绍的非常详细,需要的朋友可以参考下
    2022-02-02
  • Linux系统下操作Apache最基本的启动停止和重启命令

    Linux系统下操作Apache最基本的启动停止和重启命令

    这篇文章主要介绍了Linux系统下操作Apache最基本的启动停止和重启命令,是网站搭建入门学习中的基础知识,需要的朋友可以参考下
    2015-07-07
  • 详解linux下避免僵尸进程的几种方法

    详解linux下避免僵尸进程的几种方法

    本篇文章主要介绍了详解linux下避免僵尸进程的几种方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-02-02

最新评论