Intellij Idea-Profiling

Pubblicità

Profiler fornisce informazioni sulla tua applicazione come il suo utilizzo di CPU, memoria e heap. Fornisce anche dettagli sui thread dell’applicazione. Questo capitolo illustra l’utilizzo di VisualVMtool per la profilatura di applicazioni Java. Può profilare entità come CPU e heap.

Si raccomanda che i lettori di questo tutorial hanno familiarità con l’applicazione profilerconcepts.

Introduzione

VisualVM è uno strumento visivo che integra strumenti JDK e ti dà potenti capacità di profiling. Esso consente di generare e analizzare i dati heap, rintracciare perdite di memoria,monitorare il garbage collector ed eseguire la memoria e CPU profiling.

Prestazioni

  • Interfaccia visiva per applicazioni Java locali e remote in esecuzione su JVM.

  • Monitoraggio dell’utilizzo della memoria dell’applicazione e del comportamento di runtime dell’applicazione.

  • Monitoraggio dei thread di applicazione

  • Analizzare le allocazioni di memoria a diverse applicazioni.

  • Discariche di filo-molto utile in caso di deadlock e condizioni di gara.

  • Heap dump – molto utile per analizzare l’allocazione della memoria heap.

Configurazione

In questa sezione, impareremo i passaggi eseguiti per configurare VisualVM. I passaggi sono segue−

  • Scaricalo da qui.

  • Estrarre il file zip.

  • Passare a etc / visualvm.file conf e aggiungere la seguente riga nel file−

visualvm_jdkhome=<path of JDK>
  • Se il JDK installato nel C:\Program Files\Java\jdk-9.0.1 directory thenit dovrebbe assomigliare a questa−

visualvm_jdkhome="C:\Program Files\Java\jdk-9.0.1"

applicazione di Monitoraggio

vediamo ora come monitorare l’applicazione. Considera i seguenti passaggi per capirelo stesso−

  • Fare doppio clic su visualvm.exe.
  • Selezionare l’applicazione dal riquadro sinistro.
  • Selezionare la scheda monitor.

Applicazione di monitoraggio

Verrai indirizzato a una finestra in cui otterrai i dettagli su CPU, Heap, classee thread. Per essere specifici con l’utilizzo, passa il mouse su qualsiasi grafico. Possiamo vedere l’uso di Heap nello screenshot qui sopra.

Approfondimenti sui thread

L’applicazione Java può contenere più thread di esecuzione. Per ulteriori informazioni sui thread,selezionare la scheda Thread di una particolare applicazione. Darà varie statistiche aboutthreads come il numero di thread live e thread daemon. I diversi stati di thread areRunning, Sleeping, Waiting, Park e Monitor.

 Insights Threads

Applicazione di campionamento

VisualVM supporta CPU, campionamento della memoria e rilevamento di perdite di memoria. Per esempio l’applicazione, selezionare l’applicazione e scegli l’esempio scheda −

CPU di campionamento

Per CPU di campionamento, fare clic sulla CPU pulsante come mostrato nel seguente screenshot −

Memoria di Campionamento

profili di Memoria

Per i profili di memoria, fare clic sul pulsante di Memoria come mostrato nel seguente screenshot −

profili di Memoria

perdite di Memoria

Una perdita di memoria si verifica quando un’applicazione, durante l’esecuzione, si riempie lentamente heap withobjects che non vengono eliminati automaticamente dal programma.

Se un oggetto non utilizzato dal programma non viene eliminato, rimane in memoria e il GC non può recuperare il suo spazio. Se il numero di byte e il numero di istanze nella tua applicazione dovessero aumentare costantemente e in modo significativo nel tuo programma fino al punto di utilizzare tutto lo spazio, questo può essere un’indicazione di una perdita di memoria.

Profiling application

In questa sezione, impareremo come profilare un’applicazione. Per il profilo di un’applicazione, selezionare l’applicazione dal riquadro di sinistra e fare clic sulla scheda “profilo” −

CPU profilazione

Per eseguire la CPU profilatura, fare clic sulla CPU pulsante come mostrato nella schermata sotto −

CPU Profilazione

profili di Memoria

Per eseguire la CPU profilatura, fare clic sulla CPU pulsante come mostrato nella schermata sotto −

CPU profili di Memoria

Pubblicità

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.