千万级高并发负载均衡软件HAproxy
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的更多相关文章
- 千万级高并发负载均衡软件haproxy配置文件详解
balance roundrobin #轮询方式 balance source #将用户IP经过hash计算后,使同一IP地址的所有请求都发送到同一固定的后 ...
- Django高并发负载均衡
1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...
- Django 高并发负载均衡
1 什么是负载均衡? 当一台服务器的性能达到极限时,我们可以使用服务器集群来提高网站的整体性能.那么,在服务器集群中,需要有一台服务器充当调度者的角色,用户的所有请求都会首先由它接收,调度者再根据每台 ...
- 高并发负载均衡——nginx与lvs
一.企业级web项目架构 一.企业级web项目架构图 二.架构分析 客户端通过企业防火墙发送请求 在App服务器如tomcat接收客户端请求前,面对高并发大数据量访问的企业架构,会通过加入负载均衡主备 ...
- MySQL 高级性能优化架构 千万级高并发交易一致性系统基础
一.MySQL体系架构 由图,可以看出MySQL最上层是连接组件.下面服务器是由连接池.管理服务和工具组件.SQL接口.查询解析器.查询优化器.缓存.存储引擎.文件系统组成. 1.连接池 管理.缓冲用 ...
- linux系统多网卡热备实现高并发负载均衡
#nmcli实现bonding #先停止NetworkManagerservice NetworkManager stop chkconfig NetworkManager off //开机自启动 ...
- http高可用+负载均衡 corosync + pacemaker + pcs
http高可用+负载均衡 corosync + pacemaker + pcsopenstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861. ...
- 【高并发解决方案】8、Nginx/LVS/HAProxy负载均衡软件的优缺点详解
PS:Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,本人都在多个项目中实施过,参考了一些资料,结合自己的一些使用经验,总结一下. 一般对负载均衡的使用是随着网站规模的提升根据不 ...
- HAProxy & Keepalived L4-L7 高可用负载均衡解决方案
目录 文章目录 目录 HAProxy 负载均衡器 应用特性 性能优势 会话保持 健康检查 配置文件 负载均衡策略 ACL 规则 Web 监控平台 Keepalived 虚拟路由器 核心组件 VRRP ...
随机推荐
- Navisworks Api Quantification
Quantification 国外有的叫定量 我们国内一些施工方叫工程量. 通过TakeOff API的开发者有机会获得更多的数据和数据可通过图形用户界面. 1 添加Navisworks的Api ...
- TabControl 伸缩式菜单 仿照 uwp SplitView
留下备用笔记 之前用的Frame+Page的切换content<类似于一个contentControl 干多个事情>,但是发现页面content内容控件多的时候,每一次切换都有点卡,点击了 ...
- python序列,字典备忘
初识python备忘: 序列:列表,字符串,元组len(d),d[id],del d[id],data in d函数:cmp(x,y),len(seq),list(seq)根据字符串创建列表,max( ...
- SpringBootService,一个基于spring boot搭建的SOA服务框架
SpringBootService,这是一个spring boot微服务的框架,包括redis,mq,restful,定时器,mybatis.易扩容.易维护的架构. 项目说明 该项目使用maven进行 ...
- ubuntu设置时区为美国中部时间西六区
查看当前ubuntu系统时区 date -R Fri, Dec :: + 显示的是东八区时间及北京时间 然后输入tzselect 按照提示修改对应时区 本例子修改为美国中部时间 西六区 ~$ tzse ...
- System.Json 使用注意
在xamarin中对json字符串进行解析,使用System.Json时出现怪问题: json-string = { "ret" : "OK" } 使用如下代码 ...
- response和request的区别以及常见问题解决
request是请求,即客服端发来的请求 response是响应,是服务器做出的响应 --------------------------------------------------------- ...
- SQL Server 2012 新特性:新增和修改函数
转换函数 1.PARSE Parse是把字符串类型转化为想要的类型,看看和convert和cast的区别 SELECT PARSE ('2.111111' AS f ...
- ZooKeeper:数据模型
ZooKeeper数据模型 ZNode ZNode 分类 Stat Watcher Watcher工作原理 Watcher事件说明 Watcher注册 事件发布 示例 ZooKeeper 数据模型 整 ...
- Oracle数据库11g各版本介绍及功能比较
.标准版和企 业版.所有这些版本都使用相同的通用代码库构建,这意味着企业的数据库管理软件可以轻松地从规模较小的单一处理器服务器扩展到多处理器服务器集 群,而无需更改一行代码.Oracle数据库11g企 ...