代码改变世界

负载均衡原理

2022-12-15 22:54  杭伟  阅读(81)  评论(0编辑  收藏  举报

本人在工作中接触到的负载均衡:F5,DNS,nginx,云平台SLB,在此做个总结。

 

负载均衡的分类

DNS解析:

因为一个域名可以通过DNS解析到多个IP,这一特性天然使DNS有负载均衡的能力。

现在负载均衡这块主要应用于地理位置服务:实现地理级别的全局负载均衡。比如将南方区域访客流量解析到深圳的机房。属于流量级别的负载均衡。

 

硬件设备负载均衡-F5:

功能,性能,稳定,安全等非常全面,但价格较贵。一般在传统大公司和对安全有较高要求的公司内使用。

 

软件负载均衡-如nginx,HAProxy,LVS等:

nginx和HAProxy都是7层负载均衡,

LVS是4层负载均衡。

比如阿里云就是使用LVS+nginx实现4层+7层负载均衡包装成SLB产品对外提供服务。

 

附官网基础架构说明

 

负载均衡使用的算法

看到有一些人问负载均衡的原理,这个问题就太笼统,不知出题者是问的负载均衡算法?还是具体是哪一种负载均衡的原理?

负载均衡算法一般有:

轮询(包括加权轮询),最少连接数,随机,IP-Hash,URL-Hash等等

 

*负载均衡的应用

高可用架构常客,前端负载,网关负载等等。说到这里想起keepalived,数据库搭建高可用架构的常客,也算是不太露面的负载均衡"设备"。