你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

在应用服务环境 v1 中缩放应用

重要

本文介绍应用服务环境 v1。 应用服务环境 v1 将于 2024 年 8 月 31 日停用。 应用服务环境有新版本,此版本更易于使用并在更强大的基础结构上运行。 若要详细了解该新版本,请先参阅应用服务环境简介。 如果你当前正在使用应用服务环境 v1,请按照本文中的步骤迁移到新版本。

从 2024 年 1 月 29 日起,你无法再使用任何可用方法(包括 ARM/Bicep 模板、Azure 门户、Azure CLI 或 REST API)创建新的应用服务环境 v1 资源。 必须在 2024 年 8 月 31 日之前迁移到应用服务环境 v3,以防止资源删除和数据丢失。

在 Azure 应用服务中,通常有三项内容可以扩展:

  • 定价计划
  • 辅助角色大小
  • 实例数。

在 ASE 中,无需选择或更改定价计划。 在功能方面,它已处于高级定价功能级别。

在辅助角色大小方面,ASE 管理员可以指定用于每个辅助角色池的计算资源大小。 这意味着,如有需要,可让辅助池 1 具有 P4 计算资源,而辅助池 2 则具有 P1 计算资源。 它们不需要按照大小顺序排列。 有关大小及其定价的详细信息,请参阅此处的文档 Azure 应用服务定价。 此操作会将应用服务环境中 Web 应用和应用服务计划的缩放选项保留为:

  • 辅助池选择项
  • 实例数

对任一项目的更改均通过针对 ASE 托管的应用服务计划中显示的 UI 进行。

Screenshot that shows where to view the details of the Scale service plan and the Worker Pool service plan.

无法将 ASP 扩展到超出 ASP 所在辅助角色池中可用的计算资源数。 如果需要该辅助池中的计算资源,需让 ASE 管理员进行添加。 有关重新配置 ASE 的信息,请阅读此处的信息:如何配置应用服务环境。 还可以利用 ASE 自动缩放功能来根据计划或指标增加容量。 若要获取有关配置 ASE 环境本身自动缩放的更多详细信息,请参阅如何配置应用服务环境的自动缩放

可以使用来自不同辅助池或相同辅助池的计算资源,创建多个应用服务计划。 例如,如果在辅助池 1 中有 (10) 个可用的计算资源,可以选择使用 (6) 个计算资源创建一个应用服务计划,而第二个应用服务计划使用 (4) 个计算资源。

扩展实例数

首次在应用服务环境中创建 Web 应用时,它会从 1 个实例开始。 可以再扩大至其他实例,为应用提供额外的计算资源。

如果 ASE 具有足够的容量,那么此步骤非常简单。 转到包含你想要扩展的站点的应用服务计划,并选择“扩展”。 这会打开 UI,可以在其中为 ASP 手动设置缩放或设置自动缩放规则。 要手动缩放应用,只需将“缩放依据”设置为“手动输入的实例计数”。 从此处将滑块拖到所需的数量,或者在滑块旁边的框中输入所需的数量。

Screenshot that shows where you can set the scale for your ASP or configure autoscale rules for your ASP.

ASE 中的 ASP 自动缩放规则与一般运行方式相同。 可以选择“缩放依据”下面的“CPU 百分比”,根据 CPU 百分比创建 ASP 的自动缩放规则,或使用“计划和性能规则”创建更复杂的规则。 若要查看有关配置自动缩放的更完整详细信息,请参阅此处的指南:在 Azure 应用服务中缩放应用

辅助池选择项

如前所述,辅助角色池选项需通过 ASP UI 访问。 打开想要缩放的 ASP 边栏选项卡,并选择辅助角色池。 将显示已在应用服务环境中配置的所有辅助池。 如果只有一个辅助池,则将仅列出该池。 要更改 ASP 所在的辅助角色池,只需选择希望将应用服务计划移动到的目标辅助角色池即可。

Screenshot that shows where you can change what worker pool your ASP is in.

将 ASP 从一个辅助角色池移到另一个池之前,请确保有足够的容量可以容纳该 ASP。 辅助池列表中不仅列出了辅助池名,还显示了该辅助池中的可用辅助角色数。 请确保具有足够的可用实例来容纳应用服务计划。 如果想移动到的目标辅助池需要更多计算资源,请让 ASE 管理员进行添加。

注意

从一个辅助池移出 ASP 会导致该 ASP 中的应用冷启动。 这可能会导致请求的运行速度变慢,因为应用在新计算资源上冷启动。 使用 Azure 应用服务中的应用程序预热功能可以避免冷启动。 本文所述的应用程序初始化模块对冷启动也有效,因为当应用在新的计算资源上冷启动时,也会调用初始化进程。

入门

要开始使用应用服务环境,请参阅如何根据模板创建 ASEv1