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.
Nel relativo pannello delle impostazioni avanzate possiamo scegliere che tipo di diagnostica vogliamo raccogliere.
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.
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.
Commenti
Per inserire un commento, devi avere un account.
Fai il login e torna a questa pagina, oppure registrati alla nostra community.
Approfondimenti
Ordinare randomicamente una lista in C#
Usare un KeyedService di default in ASP.NET Core 8
Visualizzare le change sul plan di Terraform tramite le GitHub Actions
Come EF 8 ha ottimizzato le query che usano il metodo Contains
Gestire la cancellazione di una richiesta in streaming da Blazor
Eseguire una query su SQL Azure tramite un workflow di GitHub
Gestire undefined e partial nelle reactive forms di Angular
Utilizzare database e servizi con gli add-on di Container App
Eseguire un metodo asincrono dopo il set di una proprietà in Blazor 8
Gestire domini wildcard in Azure Container Apps
Creare gruppi di client per Event Grid MQTT