云计算主题 什么是负载均衡?

什么是负载均衡?

更新时间: 2024-03-01 13:11:03

负载均衡是一种对流量进行按需分发的服务,通过将流量分发到不同的后端服务器来扩展应用系统的吞吐能力,并且可以消除系统中的单点故障,提升应用系统的可用性。

为什么需要负载均衡?

负载均衡的出现主要是为了解决用户在网络服务中面临的以下问题:

  • 单台服务器性能不足

    中大规模系统/网站访问流量比较大,单台服务器处理能力不足,使用多台服务器提供服务,因此需要负载均衡做流量调度,提升服务能力。

  • 业务需要灵活调度

    对于访问量巨大的网站/系统,对流量处理调度要求很高,此时需要负载均衡的超强性能+调度算法甚至高级转发能力实现对业务的灵活调度。

  • 单点故障

    关键系统/网站需要多服务器做负载均衡高可用,避免一台服务器故障业务就受影响,需要负载均衡进行健康检查,可及时发现和屏蔽故障服务。

  • 业务对外暴露需要

    负载均衡可以提供反向代理能力,通过负载均衡的统一对外提供服务,用户后端服务无需直接对外暴露,提升业务的安全性。

负载均衡有哪些实际应用?

负载均衡广泛应用于视频/游戏大并发流量、零售/金融/企业高可靠场景、云原生网络应用和跨地域网络应用等场景。

  • 视频/游戏等大并发流量场景

    音视频/游戏等行业经常面临突发访问,海量流量,后端服务压力大。如短视频/长视频/直播/在校教育/游戏等业务中,由于服务端与用户端之间需要实时大量的互动,因此,用户流量非常大,而音视频业务的波峰波谷效应明显,这对整个系统的性能、弹性、稳定性和可用性带来了巨大的挑战,需要使用负载均衡进行流量分发。

  • 零售/金融/企业等弹性高可靠场景

    新零售新金融业务变化快,新业务上线、老业务调整时常发生,大促大型活动常态化;因此,对即开即用网络,快速交付能力,弹性伸缩能力,安全可靠、灵活计费等需求显著,需要使用负载均衡搭建高可靠架构。

  • 云原生网络应用场景

    随着云原生逐步成熟,互联网/金融/企业等诸多行业新建业务时选择云原生部署,或对现有业务进行云原生化改造。无论是使用阿里云ACK/ASK/SAE还是开源K8s,云原生网络均可用到负载均衡服务来实现流量调度。

  • 跨地域网络应用场景

    跨地域跨可用区的容灾方案。互联网/金融/企业等业务逐步遍及全球,需要将不同地域用户智能调度访问到相应的业务系统,为了降本增效,线下IDC业务需要与云上业务互通,需要使用负载均衡构建跨地域或混合云容灾架构。

负载均衡是如何工作的?

负载均衡的工作原理示意图如下:

image
  1. 负载均衡通过监听网络流量,将请求从客户端传递到负载均衡服务。负载均衡服务接收到请求后,会根据预定义的调度算法,决定将请求分发到哪个后端服务器上。

  2. 负载均衡服务会维护一个或多个服务器组,其中包含多个后端服务器。负载均衡服务会根据服务器的健康状态和负载情况,选择合适的服务器来接收请求。这样可以确保每个服务器能够均衡地处理请求,避免单个服务器负载过重导致性能下降或服务不可用。

阿里云如何帮助您实现负载均衡?

阿里云提供全托管式在线负载均衡服务,具有即开即用、超大容量、稳定可靠、弹性伸缩、按需付费等特点,适合超大规模互联网应用。与传统的硬件型负载均衡自建方案相比,无需一次性大额投入,便可拥有天猫双十一级别的海量流量分发处理能力。同时,与开源的负载均衡自建方案相比,阿里云负载均衡稳定可靠,配备专业的运维团队,免费提供7×24小时不间断技术支持服务,帮助您提升运维效率。

阿里云负载均衡服务支持以下类型的负载均衡:

  • 应用型负载均衡ALB:专门面向七层,提供超强的业务处理性能,例如HTTPS卸载能力。单实例每秒查询数QPS(Query Per Second)可达100万次。同时ALB提供基于内容的高级路由特性,例如基于HTTP报头、Cookie和查询字符串进行转发、重定向和重写等,是阿里云官方云原生Ingress网关。

  • 网络型负载均衡NLB:面向万物互联时代推出的新一代四层负载均衡,支持超高性能和自动弹性能力,单实例可以达到1亿并发连接,帮您轻松应对高并发业务。NLB面向海量终端连接、高并发消息服务、音视频传输等业务场景针对性地推出了TCPSSL卸载、新建连接限速、全端口监听等高级特性,在物联网MQTTS加密卸载等场景为用户提供多种辅助手段,是适合IoT业务的新一代负载均衡。

  • 传统型负载均衡CLB:支持TCP、UDP、HTTP和HTTPS协议,具备良好的四层处理能力,以及基础的七层处理能力。

您可以根据以下类型对比表选择合适的负载均衡产品和服务。

对比项

ALB

NLB

CLB

产品定位

  • 强大的七层处理能力与丰富的高级路由功能

  • 聚焦HTTP、HTTPS和QUIC应用层协议

  • 面向应用层交付

  • 强大的四层处理能力与大规模SSL卸载功能

  • 聚焦TCP、UDP和TCPSSL协议

  • 面向网络层交付

  • 具备良好的四层和基础的七层处理能力

  • 支持TCP、UDP、HTTP和HTTPS协议

产品架构与性能

  • 基于NFV虚拟化平台,支持弹性伸缩

  • 单实例最大支持100万QPS

  • 基于NFV虚拟化平台,不依赖物理机,支持弹性和快速扩容等需求

  • 单实例最大支持1亿并发

  • 基于物理机架构

  • 单实例最大支持100万并发、5万QPS

转发能力

  • 丰富七层特性,基于内容的路由

  • HTTP标头改写、重定向、重写、限速等

  • 丰富四层高级特性,支持TCPSSL卸载

  • 洪峰限速、优雅中断、Anyport等

  • 四、七层基础能力

  • 仅支持基于域名或URL转发

后端业务类型

  • 云服务器ECS

  • 弹性网卡ENI

  • 弹性容器实例ECI

  • IP地址

  • 函数计算FC

  • 云服务器ECS

  • 弹性网卡ENI

  • 弹性容器实例ECI

  • IP地址

  • 云服务器ECS

  • 弹性网卡ENI

  • 弹性容器实例ECI

运维能力

  • 自动弹性

  • 处理能力随着业务峰值自动伸缩,无需人工干预

  • 自动弹性

  • 处理能力随着业务峰值自动伸缩,无需人工干预

  • 按规格售卖模式下需要主动管理规格

  • 需要预估业务峰值

云原生集成

  • 云原生Ingress网关

  • 流量拆分、流量镜像、灰度发布、蓝绿测试

支持ACK/ASK集成(1.24版本以后)

支持较弱,需要与阿里云ACK或ASK等容器服务结合使用

典型应用场景

  • 互联网应用七层高性能自动弹性场景

  • 音视频应用大流量低时延场景

  • 云原生应用金丝雀蓝绿发布场景

  • 四层大流量高并发业务场景

  • 物联网、车联网等IoT业务入口

  • 多活容灾、IDC云上出入口场景

  • 网站、系统四层流量分发高可靠场景

  • 大并发高性能网络分流场景

  • 同城灾备、跨地域容灾场景