ALB(Application Load Balancer)应用负载均衡服务是阿里云推出的一项针对HTTP、HTTPS和QUIC等应用层流量的负载均衡解决方案。
在云计算领域中,其他主流云服务商如AWS(Amazon Web Services)也有提供名为“Application Load Balancer”的类似服务;而在开源或非云环境中,也有许多可以实现应用层负载均衡功能的软件和服务,例如Nginx、HAProxy、Envoy Proxy等。
应用型负载均衡ALB,提供强大的应用层处理能力和丰富的高级路由功能,聚焦HTTP、HTTPS和QUIC应用层协议。以阿里云的ALB特性举例:
ALB的IP模式分为动态IP和固定IP。动态IP和固定IP的ALB实例性能存在差异。
IP模式 | 最大每秒请求数(QPS) | 最大新建连接数(CPS) | 最大并发连接数 | 最大私网带宽 | 默认公网带宽 |
---|---|---|---|---|---|
动态IP | 100万 | 100万 | 1000万 | 100 Gbps | 400 Mbps,实际公网带宽以单ALB实例下EIP的带宽总和为准。 |
固定IP | 10万 | 10万 | 100万 | 10 Gbps | 400 Mbps,实际公网带宽以单ALB实例下EIP的带宽总和为准。 |
阿里云提供公网和私网两种类型的ALB。您可以根据业务场景选择配置对外公开或对内私有的ALB,系统会根据您的选择来决定是否使用共享带宽和弹性公网IP。
ALB组成,可以参考如下架构图:
概念 | 说明 |
---|---|
实例 | 面向七层,提供了超强七层负载均衡能力,通过将流量分发到不同的后端服务器来扩展应用系统的服务吞吐能力。单实例可处理高达100万QPS。 |
监听 | 监听是ALB最小业务单元,监听上需要配置协议与端口以告知ALB需要处理什么流量,例如HTTP协议,80端口。每个ALB至少有一个监听,才能开始流量处理与分发。每个ALB默认最多可以配置50个监听,用于处理不同的业务流量。 |
转发规则 | 转发规则用于确定ALB实例如何将请求路由到一个或多个后端服务器组中的后端服务器。ALB具备强大的高级路由能力,在传统的路由规则基础上,还可以基于HTTP标头、Cookie和HTTP请求方法等多种规则进行转发,实现基于业务的灵活调度。 |
服务器组 | 服务器组是一个逻辑组,包含多个后端服务器用于处理ALB分发的业务请求。ALB中服务器组独立于ALB存在,可以将同一服务器组挂载在不同ALB内。每个服务器组默认最多可以添加1000个后端服务器。ALB服务器组支持云ECS、ECI、ENI等多种类型的后端服务器。 |
健康检查 | ALB通过健康检查来判断后端服务器的业务可用性。ALB探测服务器组中不健康的服务器,并避免将流量分发给不健康的服务器。ALB支持丰富灵活的健康检查配置,如协议、端口、以及各种健康检查阈值。同时ALB提供健康检查模板,可将健康检查模板快速地应用到不同的服务器组。 |