其他分享
首页 > 其他分享> > 负载均衡模式有几种?深入理解负载均衡技术

负载均衡模式有几种?深入理解负载均衡技术

作者:互联网

今天互联网上的任何现代网站都会收到数千次点击,如果不是数百万次的话。如果没有任何可扩展性策略,网站要么崩溃,要么性能显着下降——我们希望避免这种情况。众所周知,添加更强大的硬件或垂直扩展只会延迟问题。但是,在没有经过深思熟虑的方法的情况下添加多个服务器或水平扩展可能无法充分利用这些好处。

在任何领域创建高度可扩展系统的秘诀是使用经过验证的软件架构模式。软件架构模式使我们能够创建经济高效的系统,可以处理数十亿个请求和 PB 级数据。本文介绍了最基本和最流行的可伸缩性模式,称为负载平衡。负载平衡的概念对于在云中构建高流量站点的任何开发人员都是必不可少的。本文首先介绍了负载均衡器,然后讨论了负载均衡器的类型;接下来是云中的负载均衡,然后是开源选项,最后是选择负载均衡器的一些指针。

什么是负载均衡器?

负载均衡器是一个流量管理器,用于在可以处理传入客户端请求的所有服务器上分配这些请求。该模式通过最小化请求处理时间和最大化容量利用率来帮助我们实现云计算的全部潜力。流量管理器仅将请求调度到可用服务器;因此,该模式适用于可扩展的云系统。每当将新服务器添加到组中时,负载均衡器都会开始调度请求并纵向扩展。相反,如果服务器出现故障,调度程序会将请求重定向到组中的其他可用服务器并缩减,这有助于我们节省资金。

负载均衡器的类型

了解负载均衡器的基础知识后,接下来是熟悉负载均衡算法。大致有两种类型的负载平衡算法。

1. 静态负载均衡器

静态负载均衡器根据算法平均分配传入流量。

2. 动态负载均衡器

顾名思义,动态负载均衡器会考虑每个服务器的当前状态,并相应地调度传入请求。

云中的负载平衡

成功的云策略是将负载均衡器与 Auto Scaling 结合使用。通常,云应用程序的网络流量、内存消耗和 CPU 利用率受到监视。这些指标和趋势可以帮助定义扩展策略,以动态添加或删除应用程序实例。云中的负载均衡器会考虑动态调整大小,并根据可用服务器调度流量。以下部分介绍了云中一些众所周知的解决方案:

AWS:弹性负载均衡 (ELB)

Amazon ELB 是一种高度可用且可扩展的负载均衡解决方案。它非常适合在 AWS 中运行的应用程序。以下是四种不同的亚马逊ELB选择:

  1. 应用程序负载均衡器用于 HTTP 和 HTTPS 流量的负载均衡。
  2. 网络负载均衡器用于对 TCP、UDP 和 TLS 流量进行负载平衡。
  3. 网关负载均衡器用于部署、扩展和管理第三方虚拟设备。
  4. 传统负载均衡器用于跨多个 EC2 实例进行负载均衡。

GCP – 云负载平衡

Google Cloud Load Balancing 是 Google 提供的高性能且可扩展的产品。它每秒最多可支持100万+次查询。它可以分为两大类,即内部和外部。每个主要类别都根据传入流量进一步分类。以下是几种负载均衡器类型。

有关比较所有可用负载均衡器的完整指南,请参阅 Google 负载均衡器页面。

Microsoft Azure Load Balancer

Microsoft Azure 负载平衡解决方案提供三种不同类型的负载平衡器:

  1. 标准负载均衡器 - 公共和内部第 4 层负载均衡器。
  2. 网关负载均衡器 - 适用于第三方网络虚拟设备的高性能和高可用性负载均衡器。
  3. 基本负载均衡器 - 非常适合小规模应用程序。

开源负载均衡解决方案

尽管默认选择始终是使用特定于供应商的云负载均衡器,但有一些开源负载均衡器选项可用。以下是其中的两个。

 

NGINX提供NGINX Plus和NGINX现代负载平衡解决方案。有许多流行的网站,包括Dropbox,Netflix和Zynga,都使用NGINX的负载均衡器。NGINX负载均衡解决方案具有高性能,可以帮助提高高流量网站的效率和可靠性。

云耀斑

Cloudflare是另一种流行的负载平衡解决方案。它提供不同级别的负载均衡器,以满足特定的客户需求。定价计划基于提供的服务、运行状况检查和安全性。

选择负载均衡器

从上面的部分中可以明显看出,负载均衡器会对应用程序产生重大影响。因此,选择正确的解决方案至关重要。以下是做出决定的一些注意事项。

大多数专家都认为,使用负载均衡器来管理流量是最佳实践,这对云应用程序至关重要。通过使用负载均衡器,应用程序可以更好地为请求提供服务,并节省成本。

标签:互联网,icode9,架构模式,负载均衡器,基础知识,应用程序
来源: