负载均衡器能够在资源(本地或云)之间动态分配网络流量以支持应用。
负载均衡器是一种充当流量代理并在多个服务器的端点之间分配网络或应用流量的解决方案。 负载均衡器用于在高峰流量时段分配容量,并提高应用的可靠性。 它们通过减轻单个服务或云的负担来提高应用的整体性能,并将需求分配到不同的计算表面上,以帮助维护应用和网络会话。
现代应用必须同时处理数百万个会话,并以快速可靠的方式向每个用户返回正确的文本、视频、图像和其他数据。 为了处理如此大的流量,大多数应用都拥有许多资源服务器,其中有重复的数据。
负载平衡在支持应用的资源网络之间动态分配网络流量。 负载均衡器是位于用户和服务器组之间的设备或服务,充当隐形的促进者,确保所有资源服务器都得到平等使用。 负载平衡器有助于提高可靠性和可用性,即使在高使用率和需求时也能确保更长的正常运行时间和更好的用户体验。
在某些情况下,必须将客户端的所有请求在会话期间发送到同一台服务器,例如当客户端将商品放入购物车然后完成购买时。 维持客户端和服务器之间的连接称为会话持久性。 如果没有会话持久性,信息就必须跨服务器同步,并且可能需要多次获取,从而导致性能效率低下。
用户和客户依赖近乎实时的能力来查找信息和进行交易。 即使在高峰需求和使用时间,滞后或不可靠且不一致的响应也可能永远拒绝客户。 如果传入的需求或“负载”太高而无法轻易满足,则计算需求的高峰可能会对内部服务器或服务器系统造成严重破坏。
使用负载均衡器的优点包括:
就其运行方式而言,负载均衡算法有两种类型:静态和动态。 静态负载均衡使用具有有关分布式网络中现有服务器的性能容量信息的算法来测量服务器上的传入负载。 动态负载均衡可以动态识别运行时需要减轻的负载量以及哪个系统应该承担负载。 它是为输入负载波动较大的系统设计的。
以下是一些常见的负载均衡算法类型。
静态负载均衡示例: 一家公司托管一个网站,其内容大部分是静态的。 这种场景对于静态负载均衡器来说是理想的,因为流量需求是可预测且一致的。 公司可以使用两个(或更多)相同的 Web 服务器,静态负载均衡器可以在这些服务器之间分配流量。
动态负载均衡的示例: 一家公司的流量会经历激增、高峰和下降。 有些是可以预测的,有些则不能。 这些组织将受益于动态负载均衡。 这些公司可能包括一家宣布“黑色星期五”营业时间和日期的电子商务零售商;一家刚刚宣布可以安排季节性疫苗在线预约的医疗保健公司;一家要求失业保险受助人在每周的某一天提交每周申请的政府失业机构;一家可能需要对自然灾害进行快速在线反应的救援组织。 有些流量和需求的激增和高峰是可以规划的,但有些则不能。 在这些场景中,动态负载均衡算法将有助于确保在客户和用户最需要时访问应用程序和资源。
具有不同功能的不同类型负载均衡器存在于称为开放系统互连 (OSI)模型的体系结构中。 该模型共有七层。 网络防火墙分为一至三级(L1-物理布线、L2-数据链路和L3-网络)。 同时,负载均衡发生在四到七层(L4传输,L5会话,L6表示和L7应用)。 负载均衡器一般用在第4层和第7层。
基于云的负载均衡器不仅仅是用于缓解流量高峰和优化服务器使用的流量控制器。 云原生负载均衡器还可以提供预测分析,帮助您在流量瓶颈出现之前将其可视化。 这反过来又提供了可操作的见解,帮助任何公司优化其 IT 解决方案。
应用负载均衡: 随着企业越来越依赖应用的性能和可用性,应用负载均衡可以帮助他们扩展规模、简化运营并节省资金。
全局服务器负载均衡: 由于用户和客户遍布全球,公司可以通过全球服务器负载均衡来增强其负载可用性,即将用户发送到距离他们最近的端点。
DNS 负载均衡: 在域名系统 (DNS) 中配置域,以便用户对该域的请求分布在一组服务器机器上的做法称为DNS 负载均衡。
网络负载均衡: 应用交付控制器 (ADC) 是作为物理服务器代理的物理或虚拟设备,管理应用或网络功能,并依靠网络负载均衡解决方案来支持它们。 ADC 还使用其他技术,包括缓存、压缩和SSL 处理卸载,以提高 Web应用的性能。 在通常的配置中,ADC 位于一组 Web 和应用服务器的前面,并调解它们与客户端之间的请求和响应,从而有效地使该组在最终用户看来就像一个虚拟服务器。
HTTP(S) 负载均衡: 在多个 Web 或应用服务器组之间分配流量以优化资源利用率的技术称为HTTP(S) 负载均衡。
内部负载平衡: 内部负载均衡器被分配给私有子网,没有公共 IP。 它通常在服务器场内工作。
直径: 直径负载均衡器将信令流量分配到网络中的多个服务器之间。 最具成本效益的方法之一是扩展直径控制平面而不是数据传输层。 (直径负载均衡也可以是静态的或动态的。)
还有其他类型的负载均衡器解决方案,可以单独使用或在具有云原生负载均衡器的网络中使用。 以下是一些值得注意的类型。
硬件负载均衡器: 硬件负载均衡器是一种具有专门操作系统的物理设备,可以进行编程以在多个应用服务器(通常是本地服务器)之间分配网络流量。
软件负载均衡器: 软件负载均衡器的运行方式与物理负载均衡器类似,但它运行在软件程序上。 该软件使用静态和动态负载均衡来消除单点故障,从而确保应用程序在各种流量需求下都可用。
虚拟负载均衡器: 一种结合了硬件和软件负载均衡器的负载均衡器是虚拟负载均衡器。 它使用应用交付控制器软件来帮助在硬件后端服务器之间分配网络流量负载。