Profiler daje wgląd w Twoją aplikację, jak jej procesor, pamięć i wykorzystanie sterty. Podaje również szczegóły dotyczące wątków aplikacji. W tym rozdziale omówiono użycie VisualVMtool do profilowania aplikacji Java. Może profilować jednostki takie jak procesor i sterta.
zaleca się, aby czytelnicy tego kursu zapoznali się z profilem aplikacjikoncepcje.
wprowadzenie
VisualVM to narzędzie wizualne, które integruje narzędzia JDK i zapewnia potężne możliwości profilowania. Pozwala na generowanie i analizowanie danych sterty, śledzenie wycieków pamięci, monitorowanie Garbage collectera i wykonywanie profilowania pamięci i procesora.
-
interfejs wizualny dla lokalnych i zdalnych aplikacji Java działających na JVM.
-
Monitorowanie wykorzystania pamięci aplikacji i zachowania aplikacji w czasie wykonywania.
-
monitorowanie wątków aplikacji
-
Analizowanie alokacji pamięci do różnych aplikacji.
-
zrzuty nici – bardzo przydatne w przypadku deadloków i warunków wyścigowych.
-
zrzuty sterty – bardzo przydatne w analizie alokacji pamięci sterty.
Konfiguracja
w tej sekcji poznamy kroki wykonane w celu skonfigurowania VisualVM. Kroki są następujące−
-
pobierz go stąd.
-
rozpakuj plik zip.
-
przejdź do etc / visualvm.plik conf i dodać następujący wiersz w tym pliku−
visualvm_jdkhome=<path of JDK>
-
jeśli twój JDK jest zainstalowany w C:\Program Katalog Files \ Java\JDK-9.0.1 powinien wyglądać następująco−
visualvm_jdkhome="C:\Program Files\Java\jdk-9.0.1"
monitorowanie aplikacji
zobaczmy teraz, jak monitorować aplikację. Rozważ następujące kroki, aby zrozumieć to samo−
- Kliknij dwukrotnie visualvm.plik exe.
- Wybierz aplikację z lewego panelu.
- wybierz kartę monitor.
zostaniesz przekierowany do okna, w którym otrzymasz szczegóły dotyczące procesora, sterty, klas i wątków. Aby być specyficznym w użyciu, najedź myszą na dowolny wykres. Możemy zobaczyć użycie sterty na powyższym zrzucie ekranu.
informacje o wątkach
Aplikacja Java może zawierać wiele wątków wykonania. Aby dowiedzieć się więcej o wątkach,wybierz zakładkę wątki konkretnej aplikacji. To daje różne statystyki ooutthreads jak liczba wątków na żywo i DAEMON wątków. Różne stany wątku areRunning, Sleeping, Waiting, Park and Monitor.
aplikacja próbkowania
VisualVM obsługuje procesor, próbkowanie pamięci i wykrywanie wycieków pamięci. Aby pobrać próbkę aplikacji, Wybierz aplikację i wybierz zakładkę przykład −
próbkowanie procesora
aby pobrać próbkę procesora, kliknij przycisk procesor, jak pokazano na poniższym zrzucie ekranu −
profilowanie pamięci
aby pobrać profilowanie pamięci, kliknij przycisk pamięć, jak pokazano na poniższym zrzucie ekranu −
wycieki pamięci
wyciek pamięci występuje, gdy aplikacja podczas działania powoli wypełnia stertę obiektami, które nie są automatycznie usuwane przez program.
jeśli obiekt, który nie jest używany przez program, nie zostanie usunięty, to pozostaje w pamięci i GC nie może odzyskać swojej przestrzeni. Jeśli liczba bajtów i liczba wystąpień w twoim programie miały stale i znacząco wzrastać do momentu wykorzystania całej przestrzeni, może to wskazywać na wyciek pamięci.
profilowanie aplikacji
w tej sekcji dowiemy się, jak profilować aplikację. Aby profilować aplikację, wybierz aplikację z lewego panelu i kliknij kartę profil −
profilowanie procesora
aby wykonać profilowanie procesora, kliknij przycisk CPU, jak pokazano na zrzucie ekranu poniżej −
Profilowanie pamięci
aby wykonać profilowanie procesora, kliknij przycisk CPU, jak pokazano na zrzucie ekranu poniżej −