架构笔记:随笔,关于常见负载均衡架构对比及演变

关于负载均衡

主流负载均衡的开源方案:Nginx、LVS、HAProxy
目前关于网站架构一般比较合理流行的架构方案:
Web前端采用Nginx/HAProxy+ Keepalived作负载均衡器;
后端采用 MySQL数据库一主多从和读写分离,采用LVS+Keepalived的架构。

1、Nginx

应用场景:小规模的web应用网站

  • 优点:
    工作在七层,可针对http做分流策略。
    对网络依赖小
    支持几万次的并发
    安装配置简单
  • 缺点:
    只能支持http/https协议
    只能通过端口检查后端服务器健康度,不支持url检测在这里插入图片描述

2、LVS

使用Linux内核集群实现一个高性能、高可用的负载均衡服务器
应用场景:应用范围比较广,因为LVS工作在4层,所以它几乎可以对所有应用做负载均衡,包括http、数据库、在线聊天室等等

  • 优点:
    抗负载能力强、是工作在网络4层之上仅作分发之用,LVS只分发请求,没有流量的产生,负载均衡里性能最强
    工作稳定,因为其本身抗负载能力很强,自身有完整的双机热备方案,如LVS+Keepalived
  • 缺点:
    软件本身不支持正则表达式处理,不能做动静分离。网页动静分离只能使用Nginx/HAProxy+Keepalived的优势所在
    有Windows服务时,实施较复杂
    在这里插入图片描述

3、HAProxy

应用场景:大型web应用

  • 优点:HAProxy的优点能够补充Nginx的一些缺点,比如支持Session的保持,Cookie的引导;同时支持通过获取指定的url来检测后端服务器的状态。HAProxy特别适用于那些负载特大的web站点,这些站点通常又需要会话保持或七层处理。
    同时,HAProxy是支持虚拟主机的。
    在这里插入图片描述

总结

像对于大型的,需要进行高并发的网站或者对网络不太严格的时候,可以使用nginx。
而负载均衡架构的选择,也是看公司的架构演变:
第一阶段:利用Nginx或HAProxy进行单点的负载均衡,这一阶段服务器规模刚脱离开单服务器、单数据库的模式,需要一定的负载均衡,但是仍然规模较小没有专业的维护团队来进行维护,也没有需要进行大规模的网站部署。这样利用Nginx或HAproxy就是第一选择,此时这些东西上手快, 配置容易,在七层之上利用HTTP协议就可以。这时是第一选择。

第二阶段:随着网络服务进一步扩大,这时单点的Nginx已经不能满足,这时使用LVS就是首要选择,Nginx此时就作为LVS节点来使用,具体LVS的是选择是根据公司规模和预算来选择。

第三阶段:这时网络服务已经成为主流产品,此时随着公司知名度也进一步扩展,相关人才的能力以及数量也随之提升,这时无论从开发适合自身产品的定制,以及降低成本来讲开源的LVS,已经成为首选,这时LVS会成为主流。
最终形成比较理想的基本架构为:
LVS+Keepalived——Nginx/HAProxy—— web server——LVS+keepalived

在这里插入图片描述

在这里插入图片描述

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值