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
Utilizzare il trigger SQL con le Azure Function
Eseguire le GitHub Actions offline
Utilizzare i primary constructor di C# per inizializzare le proprietà
Creare gruppi di client per Event Grid MQTT
Semplificare il deployment di siti statici con Azure Static Web App
Creare un'applicazione React e configurare Tailwind CSS
Personalizzare l'errore del rate limiting middleware in ASP.NET Core
Evitare il flickering dei componenti nel prerender di Blazor 8
Eseguire query verso tipi non mappati in Entity Framework Core
Generare token per autenicarsi sulle API di GitHub
Elencare le container images installate in un cluster di Kubernetes
Effettuare chiamate con versioning da Blazor ad ASP.NET Core