横向扩展后 Azure 应用服务实例可用多长时间?
Posted
技术标签:
【中文标题】横向扩展后 Azure 应用服务实例可用多长时间?【英文标题】:How long does it take for an Azure App Service instance to be available after a scale out? 【发布时间】:2020-02-24 03:54:07 【问题描述】:上下文:我正在为托管在 Microsoft Azure App Service 上的 .NET Framework 4.7 Web 应用程序设计自动缩放(横向扩展)配置。我正在使用 P3V2 定价层。该应用程序受 CPU 限制。根据应用服务计划中指示的统计数据,该应用在 2 个实例上运行时的 30 天 CPU 平均使用率为 30%。我们偶尔会遇到流量高峰,这会使 2 个实例不堪重负:我想实现自动缩放。
在设计决定我的应用服务何时横向扩展的指标阈值时,我想考虑应用服务供应 + 应用启动时间。我需要让我的阈值足够低,以便让 Azure 有时间启动一个新的应用服务实例,但又不能太低,以至于我为不需要的处理能力支付了不必要的费用。预算是一个重要因素。
问题: Azure 应用服务实例需要多长时间才能在横向扩展后可用?换句话说,Azure 应用服务需要多长时间才能横向扩展?
附:我认识到还有很多我没有在这里讨论的扩大/缩小。我尽量简明扼要。 :)
【问题讨论】:
【参考方案1】:一般来说,不会太长。我的意思是通常不到一分钟,但时间会因多种因素而异,例如应用程序大小、一天中的时间、部署区域。
您可以手动扩展并在扩展选项卡上检查运行历史记录。
仅供参考,您还可以使用 Azure Monitor 创建自动缩放策略,以备不时之需。
【讨论】:
感谢您的建议和伟大的建议来检查运行历史(事后看来很明显)!我验证了手动扩展应用服务时,新实例在 45 秒内开始提供流量。速度非常快。 @VinceHorst 您如何确认新实例在 45 秒内提供流量?我也想测试一下看到流量路由到新实例需要多长时间。 在每个响应的 html 正文(或 HTTP 标头)中,我们添加了一个唯一的字符串,用于标识生成响应的服务器。使用浏览器的 F12 开发工具,我们检查响应以查看标识符。例如,我们通常使用服务器 IP 地址的最后一个八位字节,或者服务器机器名的最后 5 个字符。扩大规模,他们会立即发出浏览器请求,直到您看到新的标识符。以上是关于横向扩展后 Azure 应用服务实例可用多长时间?的主要内容,如果未能解决你的问题,请参考以下文章