【问题标题】:How long does it take for Azure Websites to Autoscale?Azure 网站自动缩放需要多长时间?
【发布时间】:2014-10-03 04:01:09
【问题描述】:

我正在使用 MVC3、ASP.NET4.5、C#、Razor、EF6.1、SQL Azure

我一直在使用 JMeter 进行一些负载测试,并且发现了一些令人惊讶的结果。

我对 30 个并发用户进行了测试,测试时间超过 10 秒。测试计划相当简单:

1) Login
2) Navigate to page
3) Do query
4) Navigate back
5) Logout.

我正在使用“小型”“标准”实例。

我发现,当我的 Azure 设置配置为“自动缩放”时,它的行为就像我使用一个没有自动缩放的“小”实例进行的测试一样。当我设置两个没有自动缩放的“小”实例时,它的速度是测试的两倍,或者更确切地说,每个请求的平均处理时间是测试的 2 倍。所以看起来它不是自动缩放的。我尝试将 CPU 触发器设置为较低的目标,即 40-70。仍然没有喜悦。

在进一步调查中,当首次引入“自动缩放”时,它似乎评估了前一小时的指标,现在我看到了对“10 分钟”的引用。我认为一旦 CPU 开始达到目标值,它就会立即触发新实例,这一定是“自动缩放”的全部要点。如果我有大量并发使用,我现在需要额外的实例,因此是使用 PAAS 的原因。由于我的测试用时不到 10 分钟,因此“Autoscale”从未启动。那么 Autoscale 启动所需的时间应该是多少?

谢谢。

【问题讨论】:

  • 测试运行多长时间?我有一种感觉,在启动新实例之前,需要在一小段时间内达到或超过自动缩放目标。根据我在文档中收集到的信息,Azure 每 5 分钟检查一次指标,然后采取行动 (azure.microsoft.com/en-us/documentation/articles/…)
  • @BrendanGreen,是的,这很有用,它确实会参考应用程序是否在 5 分钟内达到峰值使用率,所以在我的情况下,我可能会将其设置为 2-4。现在只运行一个测试,我认为它会持续 15 分钟。 10 分钟后,看起来我只有一个实例在 NewRelic 中报告 CPU 数据。但我认为事实在文章中。所以需要更多的测试。请随时发布作为答案,以便我标记。

标签: azure azure-web-app-service


【解决方案1】:

Azure 将每 5 分钟检查一次 CPU 指标,如果超过设置的阈值,将在此时增加实例计数。

有趣的是,Azure 将在低于阈值 2 小时后减少实例计数。

来源:How to Scale Websites

引用相关部分:

注意:启用 Scale by Metric 后,Microsoft Azure 会检查 CPU 您的网站每五分钟一次,并根据需要添加实例 在那个时间点。如果 CPU 使用率低,Microsoft Azure 将 每两小时删除一次实例,以确保您的网站 保持高性能。通常,将最小实例数设为 1 是合适的。但是,如果您的设备突然出现使用高峰 网站,请确保您有足够的最低数量 处理负载的实例。例如,如果您突然出现峰值 Microsoft Azure 检查前 5 分钟间隔内的流量 您的 CPU 使用率,您的站点在此期间可能没有响应。如果 您期望突然的大量流量,设置最小实例 计数更高以预测这些爆发。

【讨论】:

  • 有没有办法确定 Azure 是如何自动缩放的?某处是否有一些图表,显示实例化了多少实例以及何时以及何时停用这些相同的实例?
  • 您是否查看过网站的操作日志(从仪表板访问)?
  • 我的15分钟测试刚刚完成,从NewRelic我只能看到一个实例的一个CPU线。
  • 我假设您已经验证该站点的 CPU 使用率超过 40%(持续)超过 5 分钟?
  • 其他一些推荐阅读:troyhunt.com/2014/07/…troyhunt.com/2014/09/10-things-i-learned-about-rapidly.html。您可能没有产生足够的负载。
【解决方案2】:

现在可以在新的 Azure 门户 (https://portal.azure.com) 中根据不同的指标配置缩放:

  • CPU
  • 内存使用情况
  • 数据输入/输出
  • Http 队列长度
  • 磁盘队列长度

还可以配置放大时间和缩小时间。在图表中,它将向您显示当前实例数量(实线)与您的最大配置数量(虚线)和您配置的指标。当指标超过线(=为给定指标配置的向上扩展)时,它将向上扩展,反之亦然。

【讨论】:

  • 谢谢。最有用的。
猜你喜欢
  • 2019-10-09
  • 2016-10-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-22
  • 1970-01-01
  • 2014-04-20
  • 2014-09-11
相关资源
最近更新 更多