我有一个 Azure App Service,我使用 App Service Plan Scale Out 选项在其中创建了 5 个实例。现在我不确定 Azure 如何在这些实例之间平衡请求?我没有看到任何负载均衡器。
另外,我怎么知道哪个实例正在服务哪个请求?
我有一个 Azure App Service,我使用 App Service Plan Scale Out 选项在其中创建了 5 个实例。现在我不确定 Azure 如何在这些实例之间平衡请求?我没有看到任何负载均衡器。
另外,我怎么知道哪个实例正在服务哪个请求?
负载均衡器是自动创建的,您看不到它。
基本上,它将请求随机发送到实例,尽管它可以通过 ARR Affinity 变得“粘性”。您可以在应用服务的应用程序设置中找到该设置:
如果它打开,负载均衡器会将 cookie 附加到响应中(如果它们还没有响应)。它使未来的请求命中同一个实例。当然,如果实例不再存在(例如由于自动缩放),那么它将再次转到随机实例。
环境变量可以在WEBSITE_INSTANCE_ID
后端告诉您哪个实例正在处理请求。您可以在此处找到可用变量的列表:https ://github.com/projectkudu/kudu/wiki/Azure-runtime-environment