Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Poznámka:
K interakci s Azure doporučujeme použít modul Azure Az PowerShell. Pokud chcete začít, přečtěte si téma Instalace Azure PowerShellu. Informace o tom, jak migrovat na modul Az PowerShell, najdete v tématu Migrace Azure PowerShellu z AzureRM na Az.
Aplikace Azure App Service můžete škálovat škálováním plánu služby App Service , na který běží. Když ve stejném plánu App Service běží více aplikací, každá rozšířená instance spustí všechny aplikace v plánu.
Naproti tomu škálování jednotlivých aplikací je možné povolit na úrovni plánu služby App Service, aby se aplikace škálovat nezávisle na plánu služby App Service, který ji hostuje. Tímto způsobem je možné škálovat plán služby App Service na 10 instancí, ale aplikaci je možné nastavit tak, aby používala jenom pět.
Poznámka:
Škálování jednotlivých aplikací je dostupné jenom pro cenové úrovně Standard, Premium, Premium V2, Premium V3 a Izolované .
Aplikace se přidělují dostupnému plánu služby App Service pomocí přístupu s nejlepším úsilím pro rovnoměrnou distribuci napříč instancemi. I když není zaručená rovnoměrná distribuce, platforma zajišťuje, že dvě instance stejné aplikace nejsou hostované ve stejné instanci plánu služby App Service.
Platforma nespoléhá na metriky při rozhodování o přidělování pracovníků. Aplikace jsou znovu vyváženy pouze v případě, že se instance přidají nebo odeberou z plánu služby App Service.
Škálování pro jednotlivé aplikace pomocí PowerShellu
Vytvořte plán se škálováním jednotlivých aplikací předáním -PerSiteScaling $true
parametru rutině New-AzAppServicePlan
.
New-AzAppServicePlan -ResourceGroupName $ResourceGroup -Name $AppServicePlan `
-Location $Location `
-Tier Premium -WorkerSize Small `
-NumberofWorkers 5 -PerSiteScaling $true
Povolte škálování jednotlivých aplikací pomocí existujícího plánu služby App Service předáním -PerSiteScaling $true
parametru do rutiny Set-AzAppServicePlan
.
Set-AzAppServicePlan -ResourceGroupName $ResourceGroup `
-Name $AppServicePlan -PerSiteScaling $true
Na úrovni aplikace nakonfigurujte počet instancí, které může aplikace používat v plánu služby App Service.
V následujícím příkladu je aplikace omezena na dvě instance bez ohledu na počet instancí, na které se základní plán služby App Service škáluje.
# 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
Důležité
$newapp.SiteConfig.NumberOfWorkers
se liší od $newapp.MaxNumberOfWorkers
. Škálování jednotlivých aplikací používá $newapp.SiteConfig.NumberOfWorkers
k určení charakteristik škálování aplikace.
Škálování jednotlivých aplikací pomocí Azure Resource Manageru
Vytvoří se následující šablona Azure Resource Manageru:
- Plán služby App Service, který se škáluje na 10 instancí.
- Aplikace, která je nakonfigurovaná tak, aby se škálovala na maximálně pět instancí.
Plán služby App Service nastavuje PerSiteScaling
vlastnost na hodnotu true "perSiteScaling": true
. Aplikace nastavuje number of workers
pro použití na 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" }
} ]
}]
}
Doporučená konfigurace pro hostování s vysokou hustotou
Škálování jednotlivých aplikací je funkce, která je povolená v globálních oblastech Azure i v prostředích App Service Environment. Doporučená strategie je ale použít službu App Service Environment k využití pokročilých funkcí a větší kapacity plánu služby App Service.
Při konfiguraci hostování s vysokou hustotou pro vaše aplikace postupujte takto:
Označte plán služby App Service jako plán s vysokou hustotou a škálujte ho na požadovanou kapacitu.
Nastavte příznak
PerSiteScaling
na hodnotu „true“ v plánu služby App Service.Nové aplikace se vytvoří a přiřadí k danému plánu služby App Service s vlastností nastavenou
numberOfWorkers
na 1.- Použití této konfigurace přináší nejvyšší možnou hustotu.
Počet pracovníků lze konfigurovat nezávisle pro každou aplikaci, aby podle potřeby bylo možné přidělovat další prostředky. Například:
- Aplikace s vysokým využitím může nastavit
numberOfWorkers
na hodnotu 3 , aby měla větší kapacitu zpracování pro danou aplikaci. - Aplikace s nízkým využitím by nastavily
numberOfWorkers
na 1.
- Aplikace s vysokým využitím může nastavit