Статьи

Откройте для себя Java VisualVM 1.3

Некоторое время назад была выпущена Java VisualVM 1.3 . Посмотрим, что нового в этом выпуске. На данный момент нет пакета для Ubuntu, поэтому мы установим его вручную:

wget https://visualvm.dev.java.net/files/documents/7163/151728/visualvm_13.zip
unzip visualvm_13.zip

И тогда мы можем непосредственно запустить его:

cd visualvm_13/bin
sh visualvm

Вам будет предложено лицензионное соглашение и после этого инструмент запускается:

Запуск VisualVM 1.3

Запуск VisualVM 1.3

Здесь нет ничего нового, кроме смены версии. Итак, давайте профилировать что-то. В моем случае я профилировал IntelliJ Idea для теста. Сразу видно, что появилась новая вкладка (Sampler). Если мы посмотрим на три первые вкладки (Обзор, Монитор и Темы), то увидим, что изменений нет.

Вкладка Sampler — это просто плагин (VisualVM Sampler Plugin), который по умолчанию был интегрирован в VisualVM. Выборка не похожа на профилирование. Нет инструментов, поэтому нет времени на установку и почти нет накладных расходов, приложение работает на полной скорости. Это достигается путем периодического опроса отслеживаемого приложения на наличие дампов потоков или гистограмм памяти. Итак, давайте проверим вкладку Sampler:

VisualVM 1.3 Sampler

VisualVM 1.3 Sampler

Например, на вкладке «Профилировщик» мы можем запустить выборку процессора или памяти. Итак, давайте попробуем процессор:

Выборка ЦП VisualVM 1.3

Выборка ЦП VisualVM 1.3

Вы сразу увидите скорость результатов: ждать некогда, но обновления, конечно, медленнее, потому что они периодические. Результаты как на вкладке Profiler. Если мы начнем выборку памяти:

VisualVM 1.3 Выборка памяти

VisualVM 1.3 Выборка памяти

Еще раз, результаты такие же, как с Profiler, но мы видим новую функцию, гистограмму PermGen:

VisualVM 1.3 PermGen Гистограмма

VisualVM 1.3 PermGen Гистограмма

Это может быть очень полезно, чтобы увидеть, почему ваше приложение занимает много места PermGen или просто увидеть, что PermGen недостаточно.

В этой версии есть еще одна новая функция. Tracer Probes. По умолчанию нет установленных пробников, поэтому вы должны установить плагины, чтобы увидеть их:

Плагины для зондов VisualVM 1.3

Плагины для зондов VisualVM 1.3

Затем просто нажмите «Установить», примите лицензионное соглашение и дайте приложению перезагрузиться. И затем, если вы запустите профилирование приложения, вы увидите вкладку Tracer:

VisualVM 1.3 Tracer

VisualVM 1.3 Tracer

Вы видите, что есть много зондов, которые мы можем включить. Итак, давайте включим некоторые пробники и запустим Tracer:

VisualVM 1.3 Tracer Graphs

VisualVM 1.3 Tracer Graphs

Как и в случае с профилировщиком, для инструментовки требуется некоторое время, после чего вы увидите несколько графиков. Существует график для каждого выбранного вами зонда. Каждый зонд отображает некоторые конкретные данные, например, Threads Probe отображает количество потоков и количество потоков Deamon. Пробник JIT-компилятора отображает активность JIT-компилятора. Здесь я также включил некоторые пробники Swing, потому что IntelliJ Idea использует Swing. Есть также зонды для JavaFX. Если вы наведите курсор мыши на графики, вы увидите точные значения в тот момент, когда курсор находится:

Сведения о мыши Tracer VisualVM 1.3

Сведения о мыши Tracer VisualVM 1.3

Думаю, этот новый Tracer просто потрясающий. Это действительно полезно и действительно красиво.

Итак, теперь мы рассмотрели основные новые функции этой новой версии. Я думаю, что эта версия добавляет несколько новых замечательных функций и улучшений, которые сделают VisualVM незаменимым профилировщиком.

Для получения полной информации об этой новой версии прочитайте заметки о выпуске .

С http://www.baptiste-wicht.com/2010/07/discover-java-visualvm-1-3/