【分布式理论】 之 负载均衡概述


负载均衡 (Load Balancer) 概述

常见的负载均衡系统包括: DNS 负载均衡、硬件负载均衡 和 软件负载均衡



一、DNS 负载均衡


DNS负载均衡 一般用来实现地理级别的均衡

本质: DNS 解析同一个域名可以返回不同的 IP 地址

即, 同样访问 www.xxx.com, 北方用户解析后获取的地址IP是 北京机房的IP, 南方用户解析后获取的IP地址是 深圳机房的IP


(1) 优点

  1. 简单、成本低

负载均衡工作交给 DNS 服务器处理, 无须自己开发或维护负载均衡设备

  1. 就近访问, 提升访问速度

DNS 解析时可以根据请求来源IP, 解析成距离用户最近的服务器地址, 可以加快访问速度, 改善性能


(2) 缺点

  1. 更新不及时

DNS 缓存的时间比较长, 修改 DNS 配置后, 由于缓存的原因, 还是有很多用户会继续访问修改前的IP

  1. 扩展性差:

DNS 负载均衡的控制权在域名商那里, 无法根据业务特点针对其做更多的定制化功能和扩展特性

  1. 分配策略比较简单

DNS 负载均衡支持的算法少, 不能区分服务器的差异, 无法感知后端服务器的状态

针对 DNS 负载均衡的缺点, 对于时延和故障敏感额业务, 有一些公司自己实现了 HTTP-DNS的功能, 即使用 HTTP协议实现一个私有的 DNS系统



二、硬件负载均衡


硬件负载均衡是通过单独的硬件设备来实现负载均衡功能

与路由器交换机类似, 类似一个用于负载均衡的基础网络设备


(1) 优点

  1. 功能强大

全面支持各层级的负载均衡, 支持全面的负载均衡算法, 支持全局负载均衡

  1. 性能强大

硬件负载均衡可以支持 100万以上的并发

  1. 稳定性高

经过严格的测试

  1. 支持安全防护

还具备防火墙、防 DDOS 攻击等安全功能


(2) 缺点

  1. 价格昂贵

  2. 扩展性差

可以根据业务进行配置, 但无法进行扩展和定制



三、软件负载均衡


通过负载均衡软件来实现负载均衡功能, 常见的有 NginxLVS

  1. Nginx 是软件的 7层负载均衡, 一般的 Linux 服务器上装一个Nginx 大概可以承载 5万/每秒
  2. LVS 是 Linux内核的 4层负载均衡, LVS的性能是十万级, 据说可以达到 80万/每秒

区别在于: 协议和灵活性

  1. Nginx 支持 HTTP、E-mail协议
  2. LVS 和协议无关, 几乎所有应用都可以做, 例如, 聊天、数据库等

Nginx 负载均衡架构示意图:
在这里插入图片描述


(1) 优点

  1. 简单

部署、维护相对比较简单

  1. 便宜

只要买个 Linux 服务器, 装上软件即可

  1. 灵活

4层 和 7层负载均衡可以根据业务进行选择;也可以根据业务进行比较方便扩展


(2) 缺点

与硬件负载均衡相比:

  1. 性能一般
  2. 功能没有硬件负载均衡那么强大
  3. 一般不具备防火墙和防DDOS攻击等安全功能


四、参考资料


  1. << 从零开始学架构 >>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值