Инструмент анализа производительности программы VisualVM — это визуальный инструмент, объединяющий несколько инструментов командной строки JDK. Его можно использовать как инструмент для анализа производительности приложений Java и мониторинга их работы. Разработчики могут использовать его для мониторинга и анализа информации о потоках и просмотра данных кучи памяти. Системные администраторы могут использовать его для мониторинга и управления приложениями Java по всей сети. Пользователи Java-приложений могут использовать его для создания отчетов об ошибках, содержащих всю необходимую информацию.
VisualVM помогает нам анализировать использование памяти, проверяя информацию о классах и объектах, загруженную в JVM. Мы можем анализировать использование памяти приложением с помощью идентификатора мониторинга и метки профилировщика VisualVM.
2. Анализ процессора
VisualVM может отслеживать использование ЦП приложением в течение определенного периода времени, отображать соответствующие данные, такие как загрузка ЦП, эффективность работы режима и частота, а также помогать нам обнаруживать недостатки производительности приложения. Мы можем выполнить анализ производительности ЦП в приложении на основе идентификации мониторинга VisualVM и тегов Profiler.
3. Анализ процесса
Язык Java может эффективно выполнять приложения синхронизации потоков. Когда мы калибруем приложение синхронизации потоков или выполняем настройку производительности во время и после разработки, нам часто необходимо понять состояние работы всех процессов в текущей программе и нет ли взаимоблокировок, хотлоков и т. д. и т. п. Затем проанализировать возможные недостатки системное программное обеспечение.
4. Анализ снимков
Мы можем использовать функцию моментального снимка VisualVM, чтобы преобразовать любой снимок производительности и сохранить его локально, чтобы помочь нам выполнить анализ производительности. Снимки обеспечивают очень быстрый способ сбора данных о производительности приложений, поскольку после преобразования снимка его можно открыть и просмотреть без подключения к сети, а также просмотреть вместе.
VisualVM предоставляет две категории снимков.
Снимок профилировщика. Когда выполняется сеанс анализа производительности (памяти или ЦП), мы можем использовать кнопку «Снимок» в строке меню результатов анализа производительности, чтобы преобразовать его в снимок профилировщика и захватить данные анализа производительности в этот момент.
Снимок приложения: мы можем щелкнуть правой кнопкой мыши точку подключения приложения в диалоговом окне «Приложения» слева и выбрать «Снимок приложения», чтобы преобразовать его в снимок приложения. Снимки приложений собирают дампы кучи, дампы процессов и снимки профилировщика в определенный момент, а также фиксируют некоторую базовую информацию о JVM.
5. Функция дампа
Создание и анализ дампов процессов: VisualVM может преобразовывать запущенные локальные приложения в дампы процессов и распечатывать следы локальных переменных активных процессов, чтобы помочь нам эффективно понять состояние работы процесса и диагностировать взаимоблокировки, гемиплегию и другие проблемы.
Генерация и анализ дампов кучи: VisualVM может генерировать дампы кучи, статистически анализировать целевую информацию в JVM в определенный момент и помогать нам анализировать внедрение целей, наличие утечек памяти и т. д.