You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Azure App Service自动缩放时,minimumElasticInstanceCount能否固定到特定部署槽?

如何将Azure App Service的minimumElasticInstanceCount固定到部署槽

可以通过将minimumElasticInstanceCount配置为槽级专属设置来实现固定,避免槽交换时该配置随应用迁移。

核心原因

默认情况下,你在根站点siteConfig中设置的minimumElasticInstanceCount是站点级共享配置,所有部署槽都会继承这个值,槽交换时该配置会跟随槽的内容一起迁移,这就是你遇到生产槽和部署槽预热实例数互换的原因。

解决方案

在Bicep模板中,不要在根站点的siteConfig里设置minimumElasticInstanceCount,而是为每个槽单独配置该参数。槽级的siteConfig是独立的,交换操作不会覆盖或迁移这些专属配置。

Bicep示例代码

// 定义App Service计划
resource appServicePlan 'Microsoft.Web/serverfarms@2023-01-01' = {
  name: 'your-app-service-plan'
  location: resourceGroup().location
  sku: {
    name: 'P1V3'
    tier: 'PremiumV3'
    size: 'P1V3'
    family: 'Pv3'
    capacity: 1
  }
}

// 根App Service(不设置minimumElasticInstanceCount)
resource appService 'Microsoft.Web/sites@2023-01-01' = {
  name: 'your-app-name'
  location: resourceGroup().location
  properties: {
    serverFarmId: appServicePlan.id
    siteConfig: {
      // 仅配置站点级通用设置,不包含minimumElasticInstanceCount
      alwaysOn: true
      http20Enabled: true
    }
  }
}

// 部署槽:固定1个预热实例
resource stagingSlot 'Microsoft.Web/sites/slots@2023-01-01' = {
  parent: appService
  name: 'staging'
  properties: {
    siteConfig: {
      minimumElasticInstanceCount: 1
      // 可添加其他槽专属配置
    }
  }
}

// 生产槽:固定2个预热实例
resource productionSlot 'Microsoft.Web/sites/slots@2023-01-01' = {
  parent: appService
  name: 'production'
  properties: {
    siteConfig: {
      minimumElasticInstanceCount: 2
      // 可添加其他槽专属配置
    }
  }
}

验证方式

部署完成后执行槽交换,通过Azure门户或Azure CLI查看两个槽的minimumElasticInstanceCount值,会发现各自保持初始配置,不会随交换操作改变。

内容的提问来源于stack exchange,提问作者Iain Brown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.20 08:12:38