Aby sprawdzić obecne użycie pamięci Java Heap na systemie Linux, możesz skorzystać z narzędzia jstat
. Narzędzie to jest dostarczane wraz z JDK (Java Development Kit).
Aby skorzystać z jstat
, wykonaj następujące kroki:
- Otwórz terminal.
- Uruchom
jstat
z odpowiednimi parametrami. Poniżej znajduje się przykładowe polecenie, które pokaże statystyki dotyczące Java Heap:
jstat -gc <PID>
Gdzie <PID>
to identyfikator procesu JVM. Możesz go znaleźć, uruchamiając polecenie jps
.Przykładowo, jeśli Twoje PID to 1234, wykonaj:
jstat -gc 1234
Polecenie jstat
z opcją -gc
wyświetla informacje na temat zużycia pamięci przez Java Heap oraz działanie garbage collectorów.Otrzymasz wyniki w kolumnach przedstawiających różne metryki, takie jak S0C (rozmiar edenu odzyskanego w pierwszej generacji), S1C (rozmiar edenu odzyskanego w drugiej generacji), S0U (użycie edenu w pierwszej generacji), S1U (użycie edenu w drugiej generacji), EC (rozmiar edenu w obiegu), EU (użycie edenu w obiegu), OC (rozmiar starego obszaru), OU (użycie starego obszaru), MC (rozmiar metaspace), MU (użycie metaspace) i inne.
Pamiętaj, że musisz zastąpić <PID>
rzeczywistym identyfikatorem procesu JVM.
To polecenie pokaże aktualne statystyki Java Heap. Jeśli chcesz monitorować te dane w czasie rzeczywistym, możesz uruchomić jstat
w trybie interaktywnym, dodając flagę -t
:
jstat -gc -t <PID> <interval> <count>
Gdzie <interval>
to okres czasu (w milisekundach) między kolejnymi odczytami, a <count>
to liczba odczytów do wykonania.
Przykład z interwałem 1 sekundy i 10 odczytami:
jstat -gc -t 1234 1000 10
Takie podejście pozwoli Ci monitorować zmiany w użyciu pamięci Java Heap w czasie.