Azure Web App 是否关心其实例是否健康?

问题描述 投票:0回答:2

如果我将一个 Web 应用程序(以前称为 Azure 网站)部署到 Azure 中的应用程序托管计划,其中包含几个实例(规模 = 2)实例前面的负载均衡器是否会关心是否有任何实例运行状况不佳?

我正在解决一个问题,该问题有时会导致我的网站在大约 50% 的情况下返回 http 503。我的想法是,我的两个实例中的一个失败了,但负载均衡器没有注意到。 如果负载均衡器

关心

,它会寻找什么?例如,我无论如何都找不到指定 ping url。 注意:这个问题与流量管理器

没有

任何关系。

azure load-balancing azure-web-app-service
2个回答
3
投票

但是,我们不会检查 Web 应用程序返回给用户请求的状态代码(例如 500 等),因为这很可能是应用程序特定的问题,而不是机器的问题。

因此您正在寻找的答案是:我们不断测试实例(VM)是否健康,如果不健康则将其关闭。但是,这些测试并不依赖于客户站点返回的错误代码


0
投票

主要发现

默认设置:最初,即使实例被标记为 不健康,流量继续路由到它以进行默认负载 平衡阈值(例如 10 分钟)。这导致了间歇性 在此期间用户出现 HTTP 500 错误。
  • 改进配置:将负载均衡阈值降低到 2 分钟并实施自动修复规则后,更多不健康实例被删除 速度很快,整体用户体验显着提升。
  • 自动修复成功:在启用自动修复规则的场景中 我们超越了不健康工人的最大比例, 遇到问题的实例会被自动回收, 无需人工干预即可恢复健康状态。这 减少停机时间并最大限度地减少对用户的影响。
  • 如果您有兴趣,可以在我的博客文章中找到更多详细信息:
https://jafreitas90.medium.com/optimizing-azure-app-service-health-checks-best-practices-for-high-availability-52784b4b5f05

© www.soinside.com 2019 - 2024. All rights reserved.