【问题标题】:Does Azure load balancer support HTTP/2?Azure 负载均衡器是否支持 HTTP/2?
【发布时间】:2017-11-06 09:18:29
【问题描述】:
【问题讨论】:
标签:
azure
nginx
http2
azure-virtual-network
【解决方案1】:
负载均衡器与协议无关,将通过任何 TCP 或 UDP 应用程序,包括 HTTP/2。
(我是 Azure 负载均衡器的产品经理)。
【解决方案2】:
2018 年回答:是的,使用应用程序网关(在 Azure 负载均衡器之上运行)。
应用网关runs on top of the Azure Load Balancer and adds Layer 7 HTTP routing capability
来自Azure Application Gateway 文档:
问。什么是应用网关?
Azure 应用程序网关是一种应用程序交付控制器 (ADC) 即服务,可为您的应用程序提供各种第 7 层负载平衡功能。它提供高度可用和可扩展的服务,完全由 Azure 管理。
问。应用网关如何支持 HTTP/2?
HTTP/2 协议支持仅适用于连接到应用程序网关侦听器的客户端。与后端服务器池的通信是通过 HTTP/1.1 进行的。
默认情况下,HTTP/2 支持被禁用。以下 Azure PowerShell 代码 sn-p 示例展示了如何启用它:
$gw = Get-AzureRmApplicationGateway -Name test -ResourceGroupName hm
$gw.EnableHttp2 = $true
Set-AzureRmApplicationGateway -ApplicationGateway $gw
因此,在您的具体情况下,您将在负载平衡器和客户之间使用 HTTP/2,在负载平衡器和您的虚拟机之间使用 HTTP/1.1。