Utilizzo di SAP Memory analyzer a runtime

Pubblicato: dicembre 6, 2007 in Informatica, Ingegneria
Tag:, , , , , , , , , , ,

Tempo fa avevo pubblicato un articolo che illustrava come misurare le performance del vostro software scritto in java tramite JProfiler o SAP Memory analyzer, utilizzando il primo a runtime e il secondo solo dopo la creazione di una snapshot dell’heap in seguito ad un “out of memory” della Java Virtual Machine (vedi articolo precedente).

In questo nuovo post voglio illustrarvi come creare le snapshot on demand, senza attendere che la virtual machine sfori la dimensione massima della memoria messagli a disposizione.

La jdk 1.6 dispone di un semplice tool denominato jmap che, fornitogli il codice del processo che si intende monitorare e il nome del file che dovrà contenere la snapshot dell’ heap, crea in maniera rapida e totalmente trasparente il file da dare in pasto a SAP Memory Analyzer. Vediamo un esempio pratico del suo utilizzo…

Per conoscere l’identificativo del processo relativo alla vostra applicazione è sufficiente digitare da prompt dei comandi (se usate windows) il comando:

>tasklist
e successivamente leggere il contenuto della colonna PID.

Una volta ottenuto l’identiticativo del processo sarà sufficiente spostarvi nella cartella bin dove risiede la vostra jdk e digitare:

C:\Programmi\Java\jdk1.6.0_02\bin>jmap -dump:file=patVostroFile.hprof idVostroProcesso

esempio:

C:\Programmi\Java\jdk1.6.0_02\bin>jmap -dump:file=testMemory.hprof 752

Una volta creato l’heap dump non vi resta che aprirlo con SAP Memory Analyzer ed eseguire le analisi di cui avete bisogno.
Spero di esservi stato utile 😉
Big Mico.

Annunci

Rispondi

Inserisci i tuoi dati qui sotto o clicca su un'icona per effettuare l'accesso:

Logo WordPress.com

Stai commentando usando il tuo account WordPress.com. Chiudi sessione / Modifica )

Foto Twitter

Stai commentando usando il tuo account Twitter. Chiudi sessione / Modifica )

Foto di Facebook

Stai commentando usando il tuo account Facebook. Chiudi sessione / Modifica )

Google+ photo

Stai commentando usando il tuo account Google+. Chiudi sessione / Modifica )

Connessione a %s...