wtorek, marca 18, 2008

Nieznane skarby JDK - JConsole :-)

Walczyłem dziś w pracy z PermGen'em [czyli obszarem pamięci w JVM do którego wędrują obiekty, które nie zostaną nigdy poddane działaniu Garbage Collectora, takimi szczęśliwcami są pliki .class, niektóre String'i oraz obiekty, które zostały namaszczone do przebywania w tym miejscu przez algorytmy GC ;-), mamy jeszcze 3 obszary:
  • Eden Space: gdzie wpadają obiekty świeżynki na które co chwila czyha Garbage Collector, 
  • Survivor Space: gdzie mieszkają te obiekty które przetrwały trudne czasy Eden'u i walkę z natrętnym GC,
  • Tenured Gen: zasłużeni, praktycznie nie do usunięcia przez GC, który zagląda do nich nieczęsto, 
  • czwarty jest wspomniany już Perm Gen: stali mieszkańcy ;-)], szukałem więc jakichś narzędzi które byłyby na tyle miłe by pokazać mi jak program się sprawuje...I znalazłem :-)
Do JDK dodawany jest miły program zwany JCONSOLE, którego znaleźć można w katalogu bin JDK.
Po uruchomieniu pozwala nam na podpięcie się do praktycznie dowolnej aplikacji Java działającej na naszej maszynie [lub na maszynie odległej]
Możemy obejrzeć jak program używa pamięci, podejrzeć ile ma wątków i zobaczyć Stack Trace dla nich, sprawdzić ile załadowano klas, obejrzeć podsumowanie dla podglądanej JVM, pogadać z MBeans'ami.

Bardzo użyteczny coś :-)
[hackowanie w tagach nie ma nic wspólnego z hackowaniem sieci, a raczej z zaglądaniem w trzewia różnych rzeczy, tutaj JVM :-)]


Podobne postybeta
Nieznane ścieżki Garbage Collectora :-)
Koszmarne Garbage Collectory part 2 ;)
Chciałem popsuć G1 i mi się na razie nie udało ;-)
Przepis na szybkie programy ;-)
TimeToRead 0.0.2 - nowy tag i poprawki ;-)

Brak komentarzy:

Prześlij komentarz