1负载均衡产品介绍

基于硬件的负载均衡设备例如F5,Big-IP,
基于软件的负载均衡产品HAproxy,LVS,nginx
在这些软件产品中,又分为基于操作系统的软负载实现和基于第三方应用的软负载实现。
LVS就是基于Linux操作系统实现的一种软负载均衡,而HAproxy是基于第三方实现的软负载均衡。

2 HAproxy简介

HAProxy是一个开源的,高性能的,基于TCP和HTTP(第七层)应用的负载均衡软件。
可靠性和稳定性好,可以与硬件级的F5媲美
可以同时维护4-5万的并发连接。
支持多于8种负载均衡算法,也支持session保持。
支持虚拟主机的功能
1.3后支持拒绝连接,全透明代理等功能
拥有一个强大的服务器状态监控页面可以实时了解系统运行状态。
支持ACL

3四层和七层负载均衡的区别

四层负载均衡器

所谓四层就是IOS模型中的第四层,四层负载均衡器也叫四层交换机,主要是通过分析IP层及TCP/UDP层
的力量实现基于IP和端口号的负载均衡,常见的有LVS,F5
主要实现过程以TCP为例
负载均衡器在接收到第一个来自客户端的SYN请求时,会通过设定的负载均衡算法选择一台最佳的后端服务器
同时将保温中的目标IP地址修改为后端服务器IP,然后直接转发给后端服务器这样一个负载均衡就完成了。
在这个过程中,一个TCP连接时客户端与服务器直接建立连接的,而负载均衡器只不过相当于路由器的转发动作。
负载均衡器

client---------TCP连接----------转发连接-----服务
修改报文头目标地址修改源地址(根据需求)

七层负载均衡器

七层负载均衡器也叫七层交换机,位于ISO模型的最高层应用层,此负载均衡支持多种协议,例如HTTP,FTP,SMTP等。
七层负载均衡可以根据报文内容,在配合负载均衡算法来选择后端服务器,因此也可叫内容交换器
对于web来说,七层负载均衡不但可以根据IP+端口号来负载分流,还可以根据网站的URL,访问域名,浏览器,语言等来
决定负载均衡策略。
主要实现过程以TCP为例
由于负载均衡器要获取报文的内容,因此只能先代替后端服务器和客户端建立连接,接着才能收到客户端发来的报文内容,然后根据
报文中特定字段加上负载均衡器中设置的负载均衡器算法来决定最终选择的内部服务器,在整个过程中,七层负载均衡器类似与一个代理服务器。

七层负载均衡器
client ----独立TCP连接----代理----------独立TCP连接------server
对比以上可以看出七层模式下,负载均衡器和客户端以及后端服务器都会分别建立一次TCP连接,而四层负载均衡模式下,仅仅建立一次TCP连接.
所以,七层对负载均衡设备要求更高,七层处理能力必然低于四层模式。

4 LVS NGINX  HAproxy的比较

千万级高并发负载均衡软件HAproxy的更多相关文章

  1. 千万级高并发负载均衡软件haproxy配置文件详解

    balance roundrobin         #轮询方式 balance source               #将用户IP经过hash计算后,使同一IP地址的所有请求都发送到同一固定的后 ...

  2. Django高并发负载均衡

    1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...

  3. Django 高并发负载均衡

    1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...

  4. 高并发负载均衡——nginx与lvs

    一.企业级web项目架构 一.企业级web项目架构图 二.架构分析 客户端通过企业防火墙发送请求 在App服务器如tomcat接收客户端请求前,面对高并发大数据量访问的企业架构,会通过加入负载均衡主备 ...

  5. MySQL 高级性能优化架构 千万级高并发交易一致性系统基础

    一.MySQL体系架构 由图,可以看出MySQL最上层是连接组件.下面服务器是由连接池.管理服务和工具组件.SQL接口.查询解析器.查询优化器.缓存.存储引擎.文件系统组成. 1.连接池 管理.缓冲用 ...

  6. linux系统多网卡热备实现高并发负载均衡

    #nmcli实现bonding #先停止NetworkManagerservice NetworkManager stop chkconfig NetworkManager off   //开机自启动 ...

  7. http高可用+负载均衡 corosync + pacemaker + pcs

    http高可用+负载均衡 corosync + pacemaker + pcsopenstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861. ...

  8. 【高并发解决方案】8、Nginx/LVS/HAProxy负载均衡软件的优缺点详解

    PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下. 一般对负载均衡的使用是随着网站规模的提升根据不 ...

  9. HAProxy & Keepalived L4-L7 高可用负载均衡解决方案

    目录 文章目录 目录 HAProxy 负载均衡器 应用特性 性能优势 会话保持 健康检查 配置文件 负载均衡策略 ACL 规则 Web 监控平台 Keepalived 虚拟路由器 核心组件 VRRP ...

随机推荐

  1. .NET文件并发与RabbitMQ(初探RabbitMQ)

    本文版权归博客园和作者吴双本人共同所有.欢迎转载,转载和爬虫请注明原文地址:http://www.cnblogs.com/tdws/p/5860668.html 想必MQ这两个字母对于各位前辈们和老司 ...

  2. 【C#公共帮助类】WinRarHelper帮助类,实现文件或文件夹压缩和解压,实战干货

    关于本文档的说明 本文档使用WinRAR方式来进行简单的压缩和解压动作,纯干货,实际项目这种压缩方式用的少一点,一般我会使用第三方的压缩dll来实现,就如同我上一个压缩类博客,压缩的是zip文件htt ...

  3. jQuery css3仿游戏网站右键环形菜单

    效果展示 http://hovertree.com/texiao/jquery/86/ PC用户右键弹出环形菜单. 手机用户扫描二维码: 长安可以弹出环形菜单. 转自:http://hovertree ...

  4. 基于Nuclear的Web组件-Todo的十一种写法

    刀耕火种 刀耕火种是新石器时代残留的农业经营方式.又称迁移农业,为原始生荒耕作制. var TodoApp = Nuclear.create({ add: function (evt) { evt.p ...

  5. C# Session添加、删除封装类

    /// <summary> /// <para> </para> /// 常用工具类——Session操作类 /// <para> ---------- ...

  6. js生成一个不重复的ID的函数的进化之路

    在MongoDB中的ObjectID,可以理解为是一个不会重复的ID,这里有个链接http://blog.csdn.net/xiamizy/article/details/41521025感兴趣可以去 ...

  7. React Native知识9-ScrollView组件

    一个包装了平台的ScrollView(滚动视图)的组件,同时还集成了触摸锁定的“响应者”系统. 记住ScrollView必须有一个确定的高度才能正常工作,因为它实际上所做的就是将一系列不确定高度的子组 ...

  8. Java实现单链表的各种操作

    Java实现单链表的各种操作 主要内容:1.单链表的基本操作 2.删除重复数据 3.找到倒数第k个元素   4.实现链表的反转   5.从尾到头输出链表 6.找到中间节点 7.检测链表是否有环 8.在 ...

  9. 一个基于Microsoft Azure、ASP.NET Core和Docker的博客系统

    2008年11月,我在博客园开通了个人帐号,并在博客园发表了自己的第一篇博客.当然,我写博客也不是从2008年才开始的,在更早时候,也在CSDN和系统分析员协会(之后名为“希赛网”)个人空间发布过一些 ...

  10. couchDB视图

    视图是设计文档的一部分. 视图函数 map函数 Map方法的参数只有一个,就是当前的文档对象.Map方法的实现需要根据文档对象的内容,确定是否要输出结果. 如果需要输出的话,可以通过emit来完成. ...