Quando creiamo una web app sulla piattaforma Microsoft Azure, dobbiamo sempre creare o indicare un server plan dove ospitarla. Il server plan è un server logico sulla quale possiamo aumentare la densità del suo utilizzo inserendo più web app. Su di esso possiamo effettuare due tipologie di scaling: orizzontale e verticale. Nel primo aumentiamo il numero di istanze, nel secondo la capacità in termini di CPU e memoria.
Quando aumentiamo il numero delle istanze, tutti gli applicativi vengono replicati e vivono in più processi, in base al service plan che tramite un load balancer spartisce il traffico su di essi. Questo semplifica notevolmente la gestione, poiché andiamo a riempire le istanze nello stesso modo, ma non ci permette di essere più granulari, per esempio usando una sola istanza per un applicativo a basso utilizzo.
E' possibile ovviare a questo limite abilitando il per-app scaling. Questa proprietà, disponibile sul service plan, ci permette poi di indicare ad ogni web app, il numero di worker da utilizzare. Prima di tutto quindi va impostato il flag, tramite PowerShell o ARM:
Set-AzAppServicePlan -ResourceGroupName mioResourceGroup -Name mioPlan -PerSiteScaling $true
Possiamo a questo punto indicare il numero di workers da utilizzare su ogni web app:
$app = Get-AzWebApp -ResourceGroupName mioResourceGroup -Name mioSite $app.SiteConfig.NumberOfWorkers = 2 Set-AzWebApp $app
Possiamo in qualsiasi momento cambiare il numero dei workers che assumerà valore uno per eventuali nuove web app inserite nello stesso plan.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Effettuare lo stream della risposta in ASP.NET Core tramite IAsyncEnumerable
Supporto ai tipi DateOnly e TimeOnly in Entity Framework Core
Potenziare Azure AI Search con la ricerca vettoriale
Migrate and Modernize your .NET Applications on Azure
Routing statico e PreRendering in una Blazor Web App
Eseguire le GitHub Actions offline
Utilizzare Tailwind CSS all'interno di React: installazione
Eseguire i worklow di GitHub su runner potenziati
C# 12: Cosa c'è di nuovo e interessante
Ottimizzare la latenza in Blazor 8 tramite InteractiveAuto render mode
Supportare il sorting di dati tabellari in Blazor con QuickGrid
Eseguire attività con Azure Container Jobs