lvs nginx haproxy 对比
都可以做负载均衡;工作方式和应用场景各有特点;

一、lvs Linux 虚拟 服务;

1、可以应用支持协议:
ftp http dns telnet smtp smtp 、
2、lvs 负载 算法:
轮叫调度、加权轮叫、最少链接、加权最小链接、基于局部的最少链接,
3、配置实现方式:
  NAT 实现
优点:可以减少共有地址,支持任何操作系统的TCP/IP 协议;
缺点:服务器伸缩限制,
  IP 隧道实现虚拟虚拟服务器
有IP 隧道开销;
  DR 直接路由实现虚拟服务器 (数据响应可以独立返回给客户端)

特点:

1、LVS 只在网络层,做请求分发,没有流量,所以可以进行分配线路分流;
2、本身资源消耗低,IO性能不会收到大的流量;
3、配置较少,直接ipvsadm 添加机器;
4、不能判断节点故障;后端服务出现故障,请求到了就会直接返回错误。

二、Nginx  负载算法:

1、轮询
2、加权轮询
3、ip_hash
4、url_hash
5、还有个 fair (根据文件请求加载时间进行负载,需要 pstream_fair 模块

nginx 做负载均衡在应用层;

1、主要在应用层 http 和 mail 的负载均衡;
2、但是 nginx 可以和 http 上对服务分流;静态分离,针对域名,或者目录结构;
3、支持Rewrite 重写规则;节省带宽 支持GZIP压缩;
4、通过端口进行后端健康检查,后端服务宕机不影响前端访问;
5、nginx 也可以做缓存;

三、HAproxy 多用于 mysql 集群,作mysql 读取负载;

1、支持两种代理模式:TCP(四层)和HTTP(七层),支持虚拟主机;
2、能够补充 Nginx 的一些缺点比如Session的保持,Cookie 的引导等工作 ;不过 nginx ip_hash 可以实现 会话保持,
3、支持url检测后端的服务器出问题的检测会有很好的帮助。
4、更多的负载均衡策略比如:动态加权轮循(Dynamic Round Robin),加权源地址哈希(Weighted Source Hash),加权URL哈希和加权参数哈希(Weighted Parameter Hash)已经实现
5、单纯从效率上来讲HAProxy更会比Nginx有更出色的负载均衡速度。
6、HAProxy 可以对 Mysql进行负载均衡,对后端的DB节点进行检测和负载均衡。
7、支持负载均衡算法:Round-robin(轮循)、Weight-round-robin(带权轮循)、source(原地址保持)、RI(请求URL)、rdp-cookie(根据cookie)
8、不能做Web服务器即Cache。

四、其他负载均衡 有 heartbeat F5

五、F5
流量负载;
可以做4~7层的负载均衡;检查宕机,从而不会将用户的访问请求传送到故障机器上。
可以做 动态 Session 的会话保持;

LVS Nginx 负载均衡区别的更多相关文章

  1. Keepalived+LVS+Nginx负载均衡之高可用

    Keepalived+LVS+Nginx负载均衡之高可用 上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致整个系统无法正常 ...

  2. LVS+nginx负载均衡知识点1

    lvs+nginx负载均衡 1       学习目标 掌握什么是负载均衡及负载均衡的作用和意义. 了解lvs负载均衡的三种模式. 了解lvs-DR负载均衡部署方法. 掌握nginx实现负载均衡的方法. ...

  3. lvs+nginx负载均衡

    1       学习目标 掌握什么是负载均衡及负载均衡的作用和意义. 了解lvs负载均衡的三种模式. 了解lvs-DR负载均衡部署方法. 掌握nginx实现负载均衡的方法. 掌握lvs+nginx负载 ...

  4. Net分布式系统之三:Keepalived+LVS+Nginx负载均衡之高可用

    上一篇写了nginx负载均衡,此篇实现高可用(HA).系统整体设计是采用Nginx做负载均衡,若出现Nginx单机故障,则导致整个系统无法正常运行.针对系统架构设计的高可用要求,我们需要解决Nginx ...

  5. zookeeper 负载均衡和 nginx 负载均衡区别 ?

    zk 的负载均衡是可以调控,nginx 只是能调权重,其他需要可控的都需要自己写插件:但是 nginx 的吞吐量比 zk 大很多,应该说按业务选择用哪种方式.

  6. zookeeper 负载均衡和 nginx 负载均衡区别?

    zk 的负载均衡是可以调控,nginx 只是能调权重,其他需要可控的都需要自己写插件:但是 nginx 的吞吐量比 zk 大很多,应该说按业务选择用哪种方式.

  7. Nginx/LVS/HAProxy 负载均衡软件的优缺点详解

    Nginx/LVS/HAProxy 负载均衡软件的优缺点详解   Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验 ...

  8. 总结)Nginx/LVS/HAProxy负载均衡软件的优缺点详解

    总结)Nginx/LVS/HAProxy负载均衡软件的优缺点详解 PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使 ...

  9. linux 负载均衡配置 keepalive lvs 使用nginx转发 CentOS7 搭建LVS+keepalived负载均衡

    最近希望能够配置一下负载均衡,在虚拟机上面,但是网上找了很多资料很零散,对于不了解的人,很多不够详细,最近终于做好了,把具体的步骤写下来,方便各位网友查阅学习 这个实验需要安装nginx如果没有安装过 ...

随机推荐

  1. 【SFA官方译文】:Spring Cloud Data Flow中的ETL

    原创: 影宸风洛 SpringForAll社区 昨天 原文链接:https://www.baeldung.com/spring-cloud-data-flow-etl 作者:Norberto Ritz ...

  2. Jupyter Notebook的安装

    依赖安装 pandoc texlive-xetex texlive-lang-cjk 安装Jupyter Notebook 本文不讲解在Anaconda中安装. 安装方法 sudo python -m ...

  3. react-native中使用长列表

    React Native 提供了几个适用于展示长列表数据的组件,一般而言我们会选用FlatList或是SectionList. FlatList组件用于显示一个垂直的滚动列表,其中的元素之间结构近似而 ...

  4. Appium的图像界面浅说

    appium的图形用户界面(GUI) (1)Application中各个项的含义作用: Application Path:填写你需要测试的Android APK的包地址(两种方式:1直接点击Choos ...

  5. oracle出现无法响应新的请求,报ora-12516错误

    oracle的会话数超出了限制,一般都是由于多次connect建立多个连接会话引起.   解决办法: (oracle登录后台,1)sqlplus /nolog  2)conn / as sysdba) ...

  6. POJ3662 SPFA//二分 + 双端队列最短路

    https://cn.vjudge.net/problem/12427/origin 题意:求1到N第K + 1大条边权最小的路径 首先想到dp递推,dp[x][y]表示到x这个点经过y条免费边的最小 ...

  7. JavaSE_坚持读源码_Object对象_Java1.7

    /** * Returns a hash code value for the object. This method is * supported for the benefit of hash t ...

  8. Map_占位符(嗨没想好怎么起名字)

    Map 是很好的集合,为我们带来了在其他语言(比如 Perl)中经常可见的好用的键/值对集合.JDK 以 HashMap 的形式为我们提供了方便的 Map 实现,它在内部使用哈希表实现了对键的对应值的 ...

  9. eclipse编译hbase 1.3.1(转)

    https://yq.aliyun.com/articles/59830   ,晚上回去试试...

  10. Spring JPA学习笔记

    目录 什么是JPA? 引入配置 新建一个Entity Bean类 JPA的增删改查 新建操作接口 新建测试类 总结 什么是JPA? 什么是JDBC知道吧?数据库有Mysql,SQL Server,Or ...