Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Annotazioni
È consigliabile usare il modulo Azure Az PowerShell per interagire con Azure. Per iniziare, vedere Installare Azure PowerShell. Per informazioni su come eseguire la migrazione al modulo AZ PowerShell, vedere Eseguire la migrazione di Azure PowerShell da AzureRM ad Az.
È possibile ridimensionare le app del servizio app di Azure ridimensionando il piano di servizio app in cui vengono eseguite. Per impostazione predefinita, la proprietà perSiteScaling a livello di piano è false e ogni app e slot di distribuzione utilizza tutte le istanze disponibili nel piano.
Quando perSiteScaling è true, ogni app e slot di distribuzione può avere il proprio siteConfig.numberOfWorkers limite. Ad esempio, un piano può avere una capacità configurata di 10 lavoratori mentre un'app ha un limite configurato di cinque lavoratori. Ogni slot di distribuzione ha un proprio limite; la configurazione dell'applicazione di produzione non comporta anche la configurazione dei relativi slot.
Annotazioni
- Il ridimensionamento per app è disponibile solo per i piani tariffari Standard, Premium, Premium V2, Premium V3 e Isolato .
- Un limite per app non riduce la capacità dedicata configurata per il piano App Service né la sua fatturazione autonoma.
Mantieni distinti questi valori:
-
Capacità del piano configurata: Il valore
sku.capacitydel piano. -
Limite di lavoratori configurato per l'app o lo slot: valore
siteConfig.numberOfWorkersdella risorsa. - Istanze attive dell'app osservate: un'osservazione puntuale in fase di esecuzione. Il numero effettivo non può superare il numero di operatori disponibili nei piani. La scalabilità in contrazione del piano può portare questo numero al di sotto del limite configurato per l'app o lo slot.
La piattaforma posiziona un'app su lavoratori distinti disponibili del piano usando un approccio best effort. Il posizionamento è indipendente dalle metriche.
| Scenario | Semantica dei valori |
|---|---|
Limite di 1 |
L'app o lo slot può usare al massimo un lavoratore disponibile del piano. Scegli questo valore solo quando la collocazione di un singolo lavoratore è accettabile per il carico di lavoro. |
Limite maggiore di 1 |
Il valore limita il numero di lavoratori distinti del piano che l'app o la slot può utilizzare. Le istanze effettivamente attive possono essere meno numerose. |
| Limite superiore alla capacità disponibile del piano | Il numero di lavoratori disponibili del piano limita il numero effettivo di istanze dell'app o dello slot. |
| Scalabilità in contrazione del piano | L'app o slot può funzionare con meno lavoratori del limite configurato dopo che i lavoratori del piano sono stati rimossi. |
La scalabilità per app è una collocazione fissa e indipendente dalla metrica all'interno dei lavoratori disponibili del piano. Non risponde alle richieste né modifica la capacità del piano. Per modificare la capacità in base alla domanda, usa la scalabilità automatica o l'autoscalabilità di Monitoraggio di Azure.
Importante
La ridondanza a zona distribuisce le istanze del piano App Service; non crea repliche nascoste dell'app. Con la scalabilità per app, un limite per app o slot pari a 1 consente l'allocazione su al massimo una sola istanza del piano e non deve essere considerato una replica simultanea tra zone. Limiti pari o superiori a 2 consentono la distribuzione su più worker distinti del piano, ma non forniscono alcuna garanzia pubblica che tali istanze dell'app siano distribuite tra zone fisiche. Per indicazioni sulla progettazione dell'affidabilità, vedi Affidabilità in App Service.
Modello di proprietà e prerequisiti
Usa un livello di prezzo supportato, un account che possa aggiornare il piano, l'app e lo slot, e la versione attuale dello strumento scelto. Gli esempi utilizzano interfaccia della riga di comando di Azure 2.89.1 e Az PowerShell 16.2.0.
| Scope | Proprietà risorsa | Esempio |
|---|---|---|
| Caratteristica della pianta | properties.perSiteScaling |
true |
| Pianificare la capacità | sku.capacity |
10 |
| Limite desiderato per app | properties.siteConfig.numberOfWorkers |
5 |
| Limite di slot desiderato | properties.siteConfig.numberOfWorkers |
2 |
| Configurazione dell'app o dello slot: risposta GET | properties.numberOfWorkers |
5 oppure 2 |
In interfaccia della riga di comando di Azure, opzioni con nomi simili hanno ambiti diversi: az appservice plan ... --number-of-workers impostano la capacità del piano, mentre az webapp config set ... --number-of-workers impostano il limite di app o slot.
Configura la scalabilità per app
Usa la scheda dello strumento che preferisci. Sostituisci nomi e posizioni provvisorie prima di eseguire un comando o distribuire un template.
Scegli tra il passaggio di creazione o quello di aggiornamento per il piano. Il passaggio di aggiornamento cambia solo perSiteScaling; non cambia la capacità del piano esistente.
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
In questo caso, --number-of-workers 10 del piano rappresenta la capacità. L'opzione di configurazione dell'app Web con lo stesso nome corrisponde al limite previsto di app o slot. Ispeziona i valori configurati:
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}"
Per i dettagli sui comandi, consulta az appservice plan e az webapp config.
Verificare la configurazione
Controlla ogni valore configurato dopo una modifica o un deployment.
| Value | Esempio previsto | Dove verificare |
|---|---|---|
| Caratteristica della pianta | true |
Pianifica risposta properties.perSiteScaling |
| Pianificare la capacità | 10 |
Risposta del piano sku.capacity |
| Limite desiderato per l'app di produzione | 5 |
Risposta config/web di produzione properties.numberOfWorkers |
| Limite desiderato per lo slot di staging | 2 |
Risposta a slot config/webproperties.numberOfWorkers |
Questi valori sono la configurazione, non i conteggi di istanze attive osservati. Il posizionamento in fase di esecuzione rimane di tipo best effort ed è limitato dai lavoratori disponibili del piano. Prima di combinare la scalabilità per app con la ridondanza di zona, rivedi la capacità del piano e ogni limite di app o slot in Imposta ridondanza di zona per un piano App Service esistente.
Configura l'hosting ad alta densità per il tuo scenario
La scalabilità per app è disponibile sia nelle regioni globali di Azure che negli ambienti App Service. Scegli i limiti di app e slot in base alla capacità di carico di lavoro e ai requisiti di affidabilità invece di applicare un solo limite a ogni carico di lavoro.
Per uno scenario di hosting ad alta densità:
Designare un piano di servizio app come piano ad alta densità e scalarlo fino alla capacità desiderata.
Impostare il flag
PerSiteScalingsu true nel piano di servizio app.Imposta il limite di
numberOfWorkersper ogni app e slot di distribuzione in base alle rispettive esigenze.- Un limite di
1offre la densità massima, ma usarlo solo per i carichi di lavoro per i quali è accettabile il posizionamento su non più di un lavoratore del piano. - Utilizzare un limite pari a
2o superiore quando il carico di lavoro deve essere idoneo all'assegnazione a più worker distinti del piano, in base alla capacità disponibile del piano.
- Un limite di
Rivedi i limiti in modo indipendente man mano che cambiano i requisiti di carico di lavoro. Ad esempio, un'app ad uso più elevato può utilizzare un limite di
3per una maggiore capacità di elaborazione, mentre un'altra app può usarla1quando è appropriato il collocamento di un singolo lavoratore.