Boa ferramenta de monitoramento de memória para Java no ambiente Linux [closed]

1

Eu estou tentando monitorar o uso de memória do meu programa java. A partir de agora estou usando o 'Top'. Top é uma ferramenta de linha de comando que mostra o uso de memória do seu programa. O exemplo apresentado é semelhante ao seguinte:

$# top -p <pid>

Saída:

PID: <PID>
User: <user>
VIRT: 513M 
%MEM: 25.1

Eu estou tentando encontrar uma ferramenta de monitoramento de memória melhor que pode me mostrar quais são os objetos java que residem na memória, seu tamanho, etc.

zfranciscus
fonte

Respostas:

2

Você pode usar VisualVM para monitorar o uso de memória em processos Java. Além de monitorar o heap geral, ele também inclui um gerenciador de perfis de memória para que você possa ver quais objetos estão usando a maior parte da memória.

Também está incluído no último JDK como jvisualvm .

Mark
fonte
1

Talvez jvmtop Vale a pena dar uma olhada. É uma ferramenta de linha de comando que fornece uma visualização ao vivo em várias métricas.

Exemplo de saída do modo de visão geral da VM:

 JvmTop 0.3 alpha (expect bugs)  amd64  8 cpus, Linux 2.6.32-27, load avg 0.12
 http://code.google.com/p/jvmtop

  PID MAIN-CLASS      HPCUR HPMAX NHCUR NHMAX    CPU     GC    VM USERNAME   #T DL
 3370 rapperSimpleApp  165m  455m  109m  176m  0.12%  0.00% S6U37 web        21
11272 ver.resin.Resin [ERROR: Could not attach to VM]
27338 WatchdogManager   11m   28m   23m  130m  0.00%  0.00% S6U37 web        31
19187 m.jvmtop.JvmTop   20m 3544m   13m  130m  0.93%  0.47% S6U37 web        20
16733 artup.Bootstrap  159m  455m  166m  304m  0.12%  0.00% S6U37 web        46
MRalwasser
fonte