Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Opmerking
We raden u aan om de Azure Az PowerShell-module te gebruiken om met Azure te communiceren. Zie Azure PowerShell installeren om aan de slag te gaan. Om te leren hoe u naar de Az PowerShell-module kunt migreren, zie Migrate Azure PowerShell from AzureRM to Az.
U kunt uw Azure App Service-apps schalen door het App Service-plan te schalen waarop ze worden uitgevoerd. Standaard is de eigenschap false op planniveau perSiteScaling, en maakt elke app en elk implementatieslot gebruik van alle beschikbare instanties in het plan.
Wanneer perSiteScaling is true, kan elke app en deploymentslot zijn eigen siteConfig.numberOfWorkers limiet hebben. Een plan kan bijvoorbeeld een geconfigureerde capaciteit van 10 werknemers hebben, terwijl een app een geconfigureerde limiet van vijf werknemers heeft. Elk implementatieslot heeft zijn eigen limiet; het configureren van de productietoepassing configureert niet automatisch ook de bijbehorende slots.
Opmerking
- Schaalaanpassing per app is alleen beschikbaar voor de prijscategorieën Standard, Premium, Premium V2, Premium V3 en Isolated .
- Een limiet per app vermindert de toegewijde capaciteit die is ingesteld voor het App Service-plan of de facturering daarvan op zichzelf niet.
Houd deze waarden duidelijk:
-
Geconfigureerde plancapaciteit: De
sku.capacitywaarde van het plan. -
Geconfigureerde app- of slotworkerlimiet: De
siteConfig.numberOfWorkerswaarde van de resource. - Waargenomen actieve app-instanties: Een point-in-time runtime-observatie. Het daadwerkelijke aantal kan niet hoger zijn dan het beschikbare aantal planmedewerkers. Plan scale-in kan dit aantal onder de geconfigureerde app- of slotlimiet brengen.
Het platform plaatst een app op verschillende beschikbare planmedewerkers door een best-effort aanpak te gebruiken. De plaatsing is onafhankelijk van de metriek.
| Scenario | Waardesemantiek |
|---|---|
Limiet van 1 |
De app of slot kan maximaal één beschikbare planmedewerker gebruiken. Kies deze waarde alleen wanneer een enkele werknemer plaatsing acceptabel is voor de werkdruk. |
Limiet groter dan 1 |
De prijs beperkt hoeveel verschillende planmedewerkers de app of slot kan gebruiken. Echte actieve instanties kunnen minder zijn. |
| Limiet boven de beschikbare plancapaciteit | Het aantal beschikbare planworkers begrenst het werkelijke aantal app- of slotinstanties. |
| Inschalen plannen | De app of slot kan draaien op minder werknemers dan de geconfigureerde limiet nadat de planwerknemers zijn verwijderd. |
Schaalverdeling per app is een vaste, metriek-onafhankelijke plaatsing binnen de beschikbare werknemers van het plan. Het reageert niet op de vraag en wijzigt de plancapaciteit niet. Om de capaciteit aan te passen op basis van vraag, gebruik automatische schaalverdeling of Azure Monitor autoscale.
Belangrijk
Zoneredundantie verdeelt de instanties van App Service-plannen; er worden geen verborgen replica’s van apps gemaakt. Bij per-app-schaalvergroting staat een app- of slotlimiet van 1 plaatsing op maximaal één planinstantie toe en mag deze niet worden beschouwd als een gelijktijdige replica over meerdere zones. Limieten van 2 of meer maken plaatsing mogelijk voor meerdere verschillende planmedewerkers, maar bieden geen publieke garantie dat die app-instanties fysieke zones beslaan. Voor richtlijnen voor betrouwbaarheidsontwerp, zie Betrouwbaarheid in App Service.
Eigenschapsmodel en vereisten
Gebruik een ondersteund prijsniveau, een account waarmee je het plan, de app en de slot kunt bijwerken, en de huidige versie van je gekozen tool. De voorbeelden gebruiken Azure CLI 2.89.1 en Az PowerShell 16.2.0.
| Scope | Eigenschap van resource | Voorbeeld |
|---|---|---|
| Abonnementsfunctie | properties.perSiteScaling |
true |
| Capaciteit plannen | sku.capacity |
10 |
| App gewenste limiet | properties.siteConfig.numberOfWorkers |
5 |
| Gewenste slotlimiet | properties.siteConfig.numberOfWorkers |
2 |
| GET-antwoord voor app- of slotconfiguratie | properties.numberOfWorkers |
5 of 2 |
In Azure CLI hebben vergelijkbare opties verschillende scopes: az appservice plan ... --number-of-workers bepaalt de plancapaciteit, terwijl az webapp config set ... --number-of-workers ze de app- of slotlimiet vaststellen.
Schaalinstelling per app
Gebruik het tabblad voor je favoriete tool. Vervang plaatsvervangende namen en locaties voordat je een commando uitvoert of een sjabloon uitrolt.
Kies voor het plan de stap voor maken of de stap voor bijwerken. De updatestap verandert alleen perSiteScaling; het verandert de bestaande capaciteit van het plan niet.
resourceGroup='<resource-group-name>'
planName='<app-service-plan-name>'
appName='<app-name>'
slotName='staging'
location='westus3'
# Create a plan with capacity 10 and per-app scaling.
az appservice plan create \
--resource-group $resourceGroup \
--name $planName \
--location $location \
--sku P1V3 \
--number-of-workers 10 \
--per-site-scaling
# Or enable per-app scaling on an existing plan without changing its capacity.
az appservice plan update \
--resource-group $resourceGroup \
--name $planName \
--set properties.perSiteScaling=true
# Configure the production app and its staging slot independently.
az webapp config set \
--resource-group $resourceGroup \
--name $appName \
--number-of-workers 5
az webapp config set \
--resource-group $resourceGroup \
--name $appName \
--slot $slotName \
--number-of-workers 2
Hier is het plan --number-of-workers 10 capaciteit. De configuratieoptie voor webapps met dezelfde naam is de gewenste app- of slotlimiet. Bekijk de geconfigureerde waarden:
az appservice plan show \
--resource-group $resourceGroup \
--name $planName \
--query "{planCapacity:sku.capacity, perSiteScaling:perSiteScaling}"
az webapp config show \
--resource-group $resourceGroup \
--name $appName \
--query "{appWorkerLimit:numberOfWorkers}"
az webapp config show \
--resource-group $resourceGroup \
--name $appName \
--slot $slotName \
--query "{slotWorkerLimit:numberOfWorkers}"
Voor commandodetails, zie az appservice plan en az webapp config.
De configuratie controleren
Controleer elke geconfigureerde waarde na een wijziging of implementatie.
| Value | Verwacht voorbeeld | Waar te verifiëren |
|---|---|---|
| Abonnementsfunctie | true |
Antwoord plannen properties.perSiteScaling |
| Capaciteit plannen | 10 |
Reactie op plan sku.capacity |
| Gewenste limiet voor productie-app | 5 |
Reactie van productie config/webproperties.numberOfWorkers |
| Gewenste limiet voor stagingslot | 2 |
Slot config/web reactie properties.numberOfWorkers |
Deze waarden zijn configuratiewaarden, geen waargenomen aantallen actieve instanties. Plaatsing tijdens runtime blijft zo goed mogelijk en is beperkt door beschikbare planworkers. Voordat je per-app schaalbaarheid combineert met zone-redundantie, bekijk de plancapaciteit en elke app- of slotlimiet in Set zone-redundantie voor een bestaand App Service-plan.
Configureer high-density hosting voor jouw scenario
Per-app schaalbaarheid is beschikbaar in zowel wereldwijde Azure-regio's als App Service Environments. Kies app- en slotlimieten op basis van de capaciteit en betrouwbaarheid van de werklast, in plaats van één limiet op elke workload toe te passen.
Voor een scenario met hoge dichtheid van hosting:
Wijs een App Service-plan aan als het plan voor hoge dichtheid en schaal het op naar de gewenste capaciteit.
Stel de
PerSiteScalingvlag in op true in het App Service-plan.Stel de
numberOfWorkerslimiet van elke app en de deployment slot in op basis van de behoeften.- Een limiet van
1biedt de hoogste dichtheid, maar gebruik het alleen voor workloads waarbij plaatsing op maximaal één planmedewerker acceptabel is. - Gebruik een limiet van
2of meer wanneer de werklast in aanmerking zou moeten komen voor plaatsing bij meerdere verschillende planmedewerkers, afhankelijk van de beschikbare plancapaciteit.
- Een limiet van
Bekijk de limieten onafhankelijk naarmate de werklastvereisten veranderen. Een app met meer gebruik kan bijvoorbeeld een limiet van
3gebruiken voor meer verwerkingscapaciteit, terwijl een andere app kan gebruiken1wanneer een enkele werknemer plaatsing passend is.