I cloud service sono un servizio che permette di distribuire e gestire la nostra applicazione in piena autonomia, senza doverci curare delle macchine fisiche, della loro installazione e manutenzione. Poiché ricorriamo a questi strumenti nella fase di staging e di produzione, si presume che la nostra applicazione sia già stata sviluppata e testata. Può capitare, però, di riscontrare problemi di prestazioni o di consumo di memoria che non sono emersi nella fase di sviluppo o che non si riusciamo a riprodurre con l'emulatore fornito dall'SDK.
In questi casi possiamo confezionare un nuovo deployment e abilitare il profiling, cioè di chiedere alle varie istanze dei nostri web/worker role, di campionare l'uso della memoria, della CPU o di eventuali problemi di concorrenza. Possiamo abilitare questa opzione direttamente nel menu di publish, nelle opzioni avanzate.
![](https://www.winfxitalia.com/script/images/330.jpg)
Nel relativo pannello delle impostazioni avanzate possiamo scegliere che tipo di diagnostica vogliamo raccogliere.
![](https://www.winfxitalia.com/script/images/330_2.jpg)
A questo punto possiamo caricare il deployment e far lavorare l'applicativo per far generare il problema che vogliamo diagnosticare. Raggiunto l'obbiettivo dobbiamo utilizzare la toolbar Server Explorer di Visual Studio 2012, espandere la voce Windows Azure Compute e cercare l'istanza del role che vogliamo diagnosticare.
![](https://www.winfxitalia.com/script/images/330_3.jpg)
Premendo View Profiling Report viene scaricato il log e visualizzato con lo strumento builtin di Visual Studio 2012, il quale ci permette di analizzare i grafici delle prestazioni, guardare le funzioni più chiamate, analizzare lo stack delle chiamate e così via.
![](https://www.winfxitalia.com/script/images/330_4.jpg)
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Gestire liste di tipi semplici con Entity Framework Core
Migrare una service connection a workload identity federation in Azure DevOps
Registrare servizi multipli tramite chiavi in ASP.NET Core 8
Utilizzare i primary constructor di C# per inizializzare le proprietà
Disabilitare automaticamente un workflow di GitHub
Code scanning e advanced security con Azure DevOps
Aggiungere interattività lato server in Blazor 8
Migliorare la sicurezza dei prompt con Azure AI Studio
Utilizzare QuickGrid di Blazor con Entity Framework
Generare un hash con SHA-3 in .NET
Eseguire attività pianificate con Azure Container Jobs