面试官:说说你知道的几种负载均衡分类

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: 面试官:说说你知道的几种负载均衡分类

image.png

负载均衡其实就是任务的分发,使得任务能按照你的预想分配到各个计算单元上,它能提高服务对外的性能,避免单点失效场景。这里要注意的一点是虽说叫负载均衡,但是有时候我们的分配算法就是不是均衡的。

比如配个nginx,做两台服务器的负载均衡,一台机子比较老是以前的配置比较低,一台是新机子配置高,那我们的分配权重可能就是3-7分,而不是五五开。所以是预想分配。但是业界还是习惯按照负载均衡来表达这个任务分配机制。


负载均衡分类


负载均衡常见的有:软件负载均衡、硬件负载均衡、DNS负载均衡。


软件负载均衡

软件负载均衡是最常见的,大小公司都需要用到它。

软件负载均衡是通过负载均衡功能的软件来实现负载均衡,常见的软件有LVS、Nginx、HAProxy

软件负载负载均衡又分四层和七层负载均衡,四层负载均衡就是在网络层利用IP地址端口进行请求的转发,基本上就是起个转发分配作用。而七层负载均衡就是可以根据访问用户的HTTP请求头、URL信息将请求转发到特定的主机。 LVS为四层负载均衡。Nginx、HAProxy可四可七。

image.png

Nginx是万级别的,通常只用它来做七层负载,LVS来做四层负载。LVS是十万级别的,所以如果顶不住常见的也有这样的搭配。


image.png

软件负载均衡的优点在于便宜而且简单灵活,就买个主机,装下软件,配置一下就能用了,配置也很简单对于一般小型企业,或者并发量不高的企业来说就够用了。而且在高峰期时容易扩容。

缺点在于(和硬件负载均衡比)性能一般,流量很大的企业就用软件负载均衡顶不住,没防火墙或者防DDos攻击等安全性功能


硬件负载均衡

硬件负载均衡就是用一个硬件一个基础网络设备,类似我们的交换机啊这样的硬件,来实现负载均衡。 常见的硬件有F5、A10。

优点就是:

1.功能强大,支持全局负载均衡提供全面的复杂均衡算法。

2.性能强悍,支持百万以上的并发。

3.提供安全功能,例如防火墙,防DDos攻击等。

这么一听我靠这么吊谁不用啊赶紧买个。别急我们下面个图片。 这网上找的,价格升序了最低也得15万,高的我看到有90万的。


image.png

缺点:

1.贵!这算是它最大的缺点了。为了安全通常还得一主一备,啧啧。

2.扩展能力差,当访问量突增的时候超过限度不能动态扩容。


DNS负载均衡

这个负载均衡时通过DNS来的,因为DNS解析同一个域名可以返回不同的ip。所以例如哈尔滨的人访问百度就返回距离他近的那个机房的IP,海南的人访问百度就返回距离他近的那个机房的IP。所以主要是用来实现地理级别的负载均衡。

优点就是:

1.简单,交给DNS服务器处理咱们都不用干活

2.因为是就近访问可以减少响应的时间,提升访问速度

缺点:

1.DNS有缓存而且缓存时间较长,所以当机房迁移等需要修改DNS配置的时候,用户可能还会访问之前的IP,导致访问失败。

2.扩展能力差,因为运营商管理控制的,由不得我们定制或者扩展。

3.比较笨,不能区分服务器之间的差异,也不能反映服务器的当前运行状态


使用套路


DNS负载均衡是地理级别的,硬件负载均衡对应的是集群级别的,软件负载均衡对应的是机器级别的。


image.png

不过一般而言像小公司或者流量不大的公司都是只需要软件负载均衡,也可能LVS都不需要上所以是按实际情况删减上图的一些东西。真正公司发展起来用户量激增才会考虑多机房和上硬件,毕竟是需求的驱使和不差钱了。



相关实践学习
SLB负载均衡实践
本场景通过使用阿里云负载均衡 SLB 以及对负载均衡 SLB 后端服务器 ECS 的权重进行修改,快速解决服务器响应速度慢的问题
负载均衡入门与产品使用指南
负载均衡(Server Load Balancer)是对多台云服务器进行流量分发的负载均衡服务,可以通过流量分发扩展应用系统对外的服务能力,通过消除单点故障提升应用系统的可用性。 本课程主要介绍负载均衡的相关技术以及阿里云负载均衡产品的使用方法。
相关文章
|
8月前
|
负载均衡 算法 应用服务中间件
面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
字节跳动面试题:Nginx有哪些负载均衡算法?Nginx位于七层网络结构中的哪一层?
168 0
|
5月前
|
负载均衡 NoSQL 算法
一天五道Java面试题----第十天(简述Redis事务实现--------->负载均衡算法、类型)
这篇文章是关于Java面试中Redis相关问题的笔记,包括Redis事务实现、集群方案、主从复制原理、CAP和BASE理论以及负载均衡算法和类型。
一天五道Java面试题----第十天(简述Redis事务实现--------->负载均衡算法、类型)
|
3月前
|
负载均衡 算法 Java
腾讯面试:说说6大Nginx负载均衡?手写一下权重轮询策略?
尼恩,一位资深架构师,分享了关于负载均衡及其策略的深入解析,特别是基于权重的负载均衡策略。文章不仅介绍了Nginx的五大负载均衡策略,如轮询、加权轮询、IP哈希、最少连接数等,还提供了手写加权轮询算法的Java实现示例。通过这些内容,尼恩帮助读者系统化理解负载均衡技术,提升面试竞争力,实现技术上的“肌肉展示”。此外,他还提供了丰富的技术资料和面试指导,助力求职者在大厂面试中脱颖而出。
腾讯面试:说说6大Nginx负载均衡?手写一下权重轮询策略?
|
5月前
|
存储 负载均衡 算法
[go 面试] 一致性哈希:数据分片与负载均衡的黄金法则
[go 面试] 一致性哈希:数据分片与负载均衡的黄金法则
|
5月前
|
机器学习/深度学习 算法
【机器学习】简单解释贝叶斯公式和朴素贝叶斯分类?(面试回答)
简要解释了贝叶斯公式及其在朴素贝叶斯分类算法中的应用,包括算法的基本原理和步骤。
90 1
|
6月前
|
存储 算法 索引
1124. 表现良好的最长时间段 (python) 前缀和 分类讨论 最大长度 力扣 面试题
1124. 表现良好的最长时间段 (python) 前缀和 分类讨论 最大长度 力扣 面试题
|
8月前
|
机器学习/深度学习 算法 数据挖掘
深度学习面试问题目录 | 深度学习目标检测、语义分割、分类上百种面试问答技巧
这篇文章汇总了深度学习面试,特别是目标检测领域的常见问题,提供了一个详细的目录大纲,便于读者直接跳转至答案。通过理解和解答这些问题,求职者能展示其在深度学习专业的知识、解决问题的能力及对应用的理解,从而提高面试成功率和竞争力。包含多个专题,如损失函数、Python解释器、经典网络、YOLO系列、激活函数等。
|
Java 数据库 数据安全/隐私保护
【面试题精讲】JVM-类加载器-类加载器分类
【面试题精讲】JVM-类加载器-类加载器分类
|
缓存 负载均衡 网络协议
前中电技术总监精讲高频面试题:谈谈你对负载均衡的理解
最近有小伙伴来问我,说让我分享一起关于负载均衡的理解,我说,网上有这么多资料了, 怎么还需要我来分享,他说网上的很多资料不系统,难理解。因此就做了这个视频。
141 0

热门文章

最新文章