Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Observação
Recomendamos que utilize o módulo Azure Az PowerShell para interagir com o Azure. Para começar, veja Install Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, veja Migrate Azure PowerShell from AzureRM to Az.
Você pode dimensionar seus aplicativos do Serviço de Aplicativo do Azure dimensionando o plano do Serviço de Aplicativo em que eles são executados. Quando vários aplicativos são executados no mesmo plano do Serviço de Aplicativo, cada instância dimensionada executa todos os aplicativos do plano.
Por outro lado, o dimensionamento por aplicativo pode ser habilitado no nível do plano do Serviço de Aplicativo para dimensionar um aplicativo independentemente do plano do Serviço de Aplicativo que o hospeda. Dessa forma, um plano do Serviço de Aplicativo pode ser dimensionado para 10 instâncias, mas um aplicativo pode ser configurado para usar apenas cinco.
Observação
O dimensionamento por aplicativo está disponível apenas para os níveis de preços Standard, Premium, Premium V2, Premium V3 e Isolado .
Os aplicativos são alocados ao plano do Serviço de Aplicativo disponível usando uma abordagem de melhor esforço para uma distribuição uniforme entre instâncias. Embora uma distribuição uniforme não seja garantida, a plataforma garante que duas instâncias do mesmo aplicativo não estejam hospedadas na mesma instância do plano do Serviço de Aplicativo.
A plataforma não depende de métricas para decidir sobre a alocação de trabalhadores. Os aplicativos são rebalanceados somente quando as instâncias são adicionadas ou removidas do plano do Serviço de Aplicativo.
Dimensionamento por aplicativo usando o PowerShell
Crie um plano com dimensionamento por aplicativo passando o -PerSiteScaling $true parâmetro para o New-AzAppServicePlan cmdlet.
New-AzAppServicePlan -ResourceGroupName $ResourceGroup -Name $AppServicePlan `
-Location $Location `
-Tier Premium -WorkerSize Small `
-NumberofWorkers 5 -PerSiteScaling $true
Habilite o dimensionamento por aplicação com um Plano de Serviço de Aplicação existente ao passar o parâmetro -PerSiteScaling $true para o cmdlet Set-AzAppServicePlan.
Set-AzAppServicePlan -ResourceGroupName $ResourceGroup `
-Name $AppServicePlan -PerSiteScaling $true
No nível do aplicativo, configure o número de instâncias que o aplicativo pode usar no plano do Serviço de Aplicativo.
No exemplo a seguir, o aplicativo está limitado a duas instâncias, independentemente de quantas instâncias o plano de serviço de aplicações subjacente possa escalonar.
# Get the app we want to configure to use "PerSiteScaling"
$newapp = Get-AzWebApp -ResourceGroupName $ResourceGroup -Name $webapp
# Modify the NumberOfWorkers setting to the desired value
$newapp.SiteConfig.NumberOfWorkers = 2
# Post updated app back to Azure
Set-AzWebApp $newapp
Importante
$newapp.SiteConfig.NumberOfWorkers é diferente de $newapp.MaxNumberOfWorkers. O dimensionamento por aplicativo é usado $newapp.SiteConfig.NumberOfWorkers para determinar as características de escala do aplicativo.
Dimensionamento por aplicativo usando o Azure Resource Manager
O seguinte modelo do Azure Resource Manager cria:
- Um plano do Serviço de Aplicativo dimensionado para 10 instâncias.
- Um aplicativo configurado para ser dimensionado para um máximo de cinco instâncias.
O plano do Serviço de Aplicativo está definindo a PerSiteScaling propriedade como true "perSiteScaling": true. O aplicativo está definindo o number of workers para usar como 5 "properties": { "numberOfWorkers": "5" }.
{
"$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters":{
"appServicePlanName": { "type": "string" },
"appName": { "type": "string" }
},
"resources": [
{
"comments": "App Service Plan with per site perSiteScaling = true",
"type": "Microsoft.Web/serverFarms",
"sku": {
"name": "P1",
"tier": "Premium",
"size": "P1",
"family": "P",
"capacity": 10
},
"name": "[parameters('appServicePlanName')]",
"apiVersion": "2015-08-01",
"location": "West US",
"properties": {
"name": "[parameters('appServicePlanName')]",
"perSiteScaling": true
}
},
{
"type": "Microsoft.Web/sites",
"name": "[parameters('appName')]",
"apiVersion": "2015-08-01-preview",
"location": "West US",
"dependsOn": [ "[resourceId('Microsoft.Web/serverFarms', parameters('appServicePlanName'))]" ],
"properties": { "serverFarmId": "[resourceId('Microsoft.Web/serverFarms', parameters('appServicePlanName'))]" },
"resources": [ {
"comments": "",
"type": "config",
"name": "web",
"apiVersion": "2015-08-01",
"location": "West US",
"dependsOn": [ "[resourceId('Microsoft.Web/Sites', parameters('appName'))]" ],
"properties": { "numberOfWorkers": "5" }
} ]
}]
}
Configuração recomendada para hospedagem de alta densidade
O dimensionamento por aplicativo é um recurso habilitado em regiões globais do Azure e em Ambientes do Serviço de Aplicativo. No entanto, a estratégia recomendada é usar os Ambientes do Serviço de Aplicativo para aproveitar seus recursos avançados e a maior capacidade do plano do Serviço de Aplicativo.
Siga estas etapas para configurar a hospedagem de alta densidade para seus aplicativos:
Designe um plano do Serviço de Aplicações como o plano de alta densidade e expanda-o para a capacidade desejada.
Defina o flag
PerSiteScalingcomo verdadeiro no plano App Service.Novos aplicativos são criados e atribuídos a esse plano do Serviço de Aplicativo com a
numberOfWorkerspropriedade definida como 1.- Usando essa configuração, obtém-se a maior densidade possível.
O número de trabalhadores pode ser configurado independentemente por aplicativo para conceder recursos adicionais, conforme necessário. Por exemplo:
- Um aplicativo de alto uso pode ser definido
numberOfWorkerscomo 3 para ter mais capacidade de processamento para esse aplicativo. - Os aplicativos de baixo uso seriam definidos
numberOfWorkerscomo 1.
- Um aplicativo de alto uso pode ser definido