Skip to content

VisualVM

LucasFerreiraRodrigue edited this page Oct 24, 2017 · 6 revisions

VisualVM é uma ferramenta que permite visualizar, com detalhes, a performance de uma aplicação Java enquanto ela é executada na JVM. As aplicações visualizadas podem ser tanto locais como remotas.

A aplicação escolhida para o uso da ferramenta foi a IDE Eclipse

Ao iniciar a ferramenta a aba de aplicações é exibida

Em local todas as aplicações sendo executadas na JVM são exibidas onde o PID é o ID do processo da aplicação, expandindo uma aplicação é possivel ver o relatorio de Thread Dump, Heap Dump e Snapshot

A conexão com aplicações remotas é selecionando Remote e preenchendo os dados na seguinte janela


Overview da aplicação no VisualVM


Todas as capturas de tela abaixo foram obtidas apos a execução do comando maven clean no eclipse


Monitor

Na aba Monitor 4 gráficos são exibidos

Grafico de uso da CPU

Gráfico de Heap


O gráfico de heap mostra o tamanho e quanto do mesmo esta em uso

Gráfico de Classes

O gráfico de classes mostra o numero de classes utilizadas e quantas estão sendo compartilhadas

Gráfico de Threads

O gráfico de Threads mostra a quantidade de threads vivas bem como a de daemon threads


Threads

As threads são visualizadas em mais detalhes na aba threads

A ferramenta da a opção de fazer um thread dump, fornece um relatório com o stack trace das threads ativas da aplicação, que ajuda a resolver problemas de deadlock


Sampler/Profiler

A opção cpu monitoria a performance da aplicação, e a opção memory monitora o uso de memoria da aplicação. Logo abaixo esta os snapshots do momento da execução do comando

CPU

Memory

A ferramenta oferece a opção de executar um heap dump, fornecendo o seguinte relatorio.

A aba classes mostra uma lista de classes e a quantidades de vezes que a mesma foi instanciada

Dado uma classe desejada, a aba de instancias mostra os objetos instanciados a partir da classe selecionada

Clone this wiki locally