Amazon 已经发布了其新的负载均衡器产品, Application Load Balancer(ALB)。ALB 是一种新型智能负载均衡器,对于那些运行基于 HTTP 的服务的用户来说,它可以显著地降低负载均衡的成本。
ALB 是位于 OSI 模型第七层的负载均衡器,因此它能根据网络包的内容将该网络包路由到不同的后端服务。现有的负载均衡器多是位于 OSI 模型第四层的 TCP/UDP 均衡器。与这些均衡器不同的是,ALB 将检查网络包的内容,并将该网络包发送给适当的服务。当前,ALB 支持基于 URL 对路由流量定义多至十条的独立规则。
对于那些运行细粒度后端服务的用户而言,使用 ALB 是一种福利。有别于为每一种服务运行一个弹性负载均衡器,一个 ALB 就可以为多个后端服务均衡网络流量。例如,包含“/api”的 URL 和包含“/signup”的 URL 会被路由到不同的后端服务上。
在未来的更新中,ALB 将非常有可能具有根据任意 HTTP 头信息进行路由的功能。来自 Amazon 的 Jeff Barr 暗示了这样的改进。他提到,“假以时日,我们计划为提供其它的路由方法。”
除了对标准 HTTP 路由的支持,ALB 还支持 WebSockets 和 HTTP/2。
在今年 8 月 11 日举办的纽约 AWS 峰会上,Amazon CTO Werner Vogels 指出,新负载均衡器是明显更好的:
我们从一些最早使用封闭测试版的用户那里所听到的是,ALB 不仅比 AWS 原有的 Classic Load Balancer 更快,而且大家将会看到成本显著降低。通常能达到 10% 甚至更多。
当然,其它云服务提供商也已有类似的产品。微软的 Azure 提供了应用网关(Application Gateway)产品,Google 也提供了一种基于HTTP 及HTTPS 的均衡器。
ALB 已经可以与 Auto Scaling、ECS、CloudFormation、CodeDeploy 和 Certificate Manager 等其它 AWS 产品搭配使用,而与 Elastic Beanstalk 和 AWS Config 的集成正在实现中。原有的 Elastic Load Balancer 均衡器,现已更名为 Classic Load Balancer,依然是可用的。可使用 Load Balancer Copy Utility 将现有的 Classic Load Balancers 迁移到 ALB。
获取更多信息,可访问 Barr 的博客文章,了解如何设置新的ALB。
评论