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

linux服务器之LVS、Nginx和HAProxy负载均衡器对比的更多相关文章

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

    LVS特点: 1.抗负载能力强,使用IP负载均衡技术,只做分发,所以LVS本身并没有多少流量产生: 2.稳定性.可靠性好,自身有完美的热备方案:(如:LVS+Keepalived) 3.应用范围比较广 ...

  2. LVS、Nginx和HAProxy负载均衡器对比总结

    LVS特点: 1.抗负载能力强,使用IP负载均衡技术,只做分发,所以LVS本身并没有多少流量产生: 2.稳定性.可靠性好,自身有完美的热备方案:(如:LVS+Keepalived) 3.应用范围比较广 ...

  3. LVS Nginx和HAproxy的区别,怎么选择最好

    LVS Nginx和HAproxy有什么区别呢? LVS:Linux Virtual Server的简写,意即Linux虚拟服务器,是一个虚拟的服务器集群系统. Nginx:Nginx是一款轻量级的w ...

  4. Linux服务部署:nginx服务 nfs服务

    nginx服务 源码安装: yum install gcc-* glibc-* openssl openssl-devel pcre pcre-devel zlib zlib-devel -ylsta ...

  5. 【Linux】虚拟服务器之LVS

    写在前面 觉得甚是幸运,能够有机会参与到ITOO配置环境的工作中去.现在正在熟悉,在搭建环境的时候,有LVS安装配置教程,对这一块有些懵逼,这几天查了一些资料,写在这里,和大家分享一下 是什么 LVS ...

  6. XPS1330 作为Linux服务器之安装配置计划

      # Task 状态 完成时间 备注 博文链接  1.  打通SSH  未开始  --  安装系统后已经具备  --  2.  打通FTP  未开始  --  安装系统后已经具备  --  3.   ...

  7. linux服务之lvs

    开发语言: 服务器端:在内核中实现,无守护程序 客户端:一般是cli界面下的ipvsadm命令 相关包:ipvsadm 在LVS框架中,提供了含有三种IP负载均衡技术的IP虚拟服务器软件IPVS.基于 ...

  8. Linux服务器之SSH

    SSH 1.ssh是安全的加密协议,用于远程连接linux服务器. 2.ssh默认端口是22,安全协议版本ssh2. 3.ssh服务端主要包含两个服务功能ssh远程连接,sftp服务. 4.linux ...

  9. linux服务基础之nginx配置详解

    nginx简单介绍:https://www.cnblogs.com/ckh2014/p/10848670.html nginx编译安装:https://www.cnblogs.com/ckh2014/ ...

随机推荐

  1. 微信用户授权,取openid

    var appid = "wxb5f2540cff5c72be"; var secret = "3de016d0c294b82a5c74ce3fc4865271" ...

  2. angularJs编写多指令的情况

    本实例主要展示controller和link参数的使用.以及多个指令同时作用的情况. <!DOCTYPE html> <html ng-app="myModule" ...

  3. python 之 模拟GET/POST提交

    以 POST/GET 方式向 http://127.0.0.1:8000/test/index 提交数据. # coding:utf-8 import httplib import urllib cl ...

  4. Dubbo中对Spring配置标签扩展

    Spring提供了可扩展Schema的支持,完成一个自定义配置一般需要以下步骤: 设计配置属性和JavaBean 编写XSD文件 编写NamespaceHandler和BeanDefinitionPa ...

  5. C#中如何设置窗体的默认按钮和取消按钮

    可以直接在窗体的AcceptButton和CancelButton中设置相应的按钮. 也可以在后头通过代码设置: this.AcceptButton = (IButtonControl)btnSave ...

  6. Words in Coding Theory

    Lemma d(x.y) wt(c,0) self-dual self-orthogonal even prime wt(C) matrix column permute permutation ge ...

  7. LayoutInflater的实例化

    获得 LayoutInflater 实例的三种方式 1. LayoutInflater inflater = getLayoutInflater();  //调用Activity的getLayoutI ...

  8. sqlite报错OutOfMemory

    如 java.sql.SQLException: out of memory at org.sqlite.DB.throwex(DB.java:252) at org.sqlite.NestedDB. ...

  9. Redis多机功能总结

    1.通过Redis的复制功能,用户可以创建指定服务器的任意多个复制品,每个复制品服务器和被复制的原服务器拥有相同的数据: 2.通过将读请求分散给多个从服务器处理,用户可以减少主服务器在处理读请求方面的 ...

  10. 根据文字返回Label高度

    NSString分类 @implementation NSString (stringSize) //计算文字显示的所需要的size -(CGSize)sizeWithFont:(UIFont *)f ...