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会话呢?

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

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

相关文章

  • CentOS7设置jar应用程序开机启动的方法

    CentOS7设置jar应用程序开机启动的方法

    这篇文章主要介绍了CentOS7设置jar应用程序开机启动的方法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-10-10
  • linux服务器ubuntu定时任务cron设置每秒执行

    linux服务器ubuntu定时任务cron设置每秒执行

    这篇文章主要介绍了linux服务器ubuntu定时任务cron设置每秒执行,使用 cron 时,有一些注意事项可以帮助你确保任务按预期执行,并减少潜在的问题,本文给大家介绍的非常详细,需要的朋友参考下吧
    2024-02-02
  • Centos7.3服务器搭建LNMP环境的方法

    Centos7.3服务器搭建LNMP环境的方法

    这篇文章主要介绍了Centos7.3服务器搭建LNMP环境的方法,结合实例形式分析了Centos7.3搭建LNMP环境的相关步骤、命令、使用方法及注意事项,需要的朋友可以参考下
    2018-04-04
  • 基于ubuntu16 Python3 tensorflow(TensorFlow环境搭建)

    基于ubuntu16 Python3 tensorflow(TensorFlow环境搭建)

    这篇文章主要介绍了基于ubuntu16 Python3 tensorflow(TensorFlow环境搭建),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-01-01
  • crontab定时任务不执行的原因分析与解决方法

    crontab定时任务不执行的原因分析与解决方法

    这篇文章主要给大家介绍了关于crontab定时任务不执行的原因分析与解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-01-01
  • 在Linux中如何查看可用的网络接口详解

    在Linux中如何查看可用的网络接口详解

    这篇文章主要给大家介绍了关于在Linux中如何查看可用的网络接口的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Linux具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
    2019-03-03
  • 详解在 CentOS 6.x上安装 docker.io

    详解在 CentOS 6.x上安装 docker.io

    这篇文章主要介绍了在 CentOS 6.x上安装 docker.io成功,具有一定的参考价值,感兴趣的小伙伴们可以参考一下。
    2017-01-01
  • 腾讯云(ubuntu)下安装 nodejs + 实现 Nginx 反向代理服务器

    腾讯云(ubuntu)下安装 nodejs + 实现 Nginx 反向代理服务器

    本文将介绍如何给腾讯云上的 Ubuntu Server 12.04 LTS 64位主机安装 node 及 nginx,并简单配置反向代理。
    2016-11-11
  • Linux常见问题解决方案汇总

    Linux常见问题解决方案汇总

    今天小编就为大家分享一篇关于Linux常见问题解决方案汇总,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
    2019-02-02
  • apache中通过mod_rewrite实现伪静态页面的方法

    apache中通过mod_rewrite实现伪静态页面的方法

    mod_rewrite是Apache的一个非常强大的功能,它可以实现伪静态页面。下面我详细说说它的使用方法!对初学者很有用的哦!
    2011-08-08

最新评论