як ви профілюєте джерело Java за допомогою редактора ідей intellij? [зачинено]


83

Я знаю, що Netbeans має щось на зразок «інтегрованого» профілі, наприклад, ви можете запускати модульні тести та використовувати його для аналізу та пошуку того, що їх уповільнює, де є вузькі місця. Чи можна профілювати код у редакторі IntelliJ IDEA?


1
Наскільки я знаю, існує лише одна безкоштовна інтеграція профайлера: VisualVM .
CrazyCoder

Мабуть є невільне JProfiler плагін, FWIW stackoverflow.com/a/21156875/32453
rogerdpack

Сьогодні я встановив плагін VisualVM в INtellij IDEA ... спочатку зіткнувся з певною проблемою, але, дотримуючись інструкцій, поданих у blog.idrsolutions.com/2013/05/..., я міг легко налаштувати visualVM
Ширішкумар Барі

2
Ще одне питання, яке є надто практичним та корисним, щоб залишатися відкритим. SO повинен підтримувати питання з наборами відповідей {N} , де досить добре результат (и) з набору: [ X, Y, Z] підйом до вершини через спільноти , а решта зникають / вимагають додаткових дій за рахунок природного спаду. Знову через громаду. "Ви дійсно хочете відповісти на це? Тому що вже є відповідь, яка проголосувала досить добре?" "Так, бо зараз є краща найкраща відповідь". Я маю на увазі, що ніколи не трапляється в програмному забезпеченні, так?
P.Brian.Mackey

1
FYI: У випуску IntelliJ IDEA v2018.3 Ultimate версія JVM Profiler доступна як експериментальна функція. Дивіться blog.jetbrains.com/idea/2018/09/…
chipiik

Відповіді:


55

Ви можете спробувати безкоштовну інтеграцію профайлера VisualVM за допомогою плагіна .


Схоже, якщо ви купуєте IntelliJ "ultimate", він також включає вбудований агент профілювання YourKit. Не безкоштовний, але включений, тому, мабуть, пов’язаний із моїм початковим запитанням :)
rogerdpack

4
Ні, агент YourKit дозволить вам зробити знімок процесора / пам’яті при зверненні до служби підтримки з проблемами продуктивності, це не сам профайлер буде коштувати вам додатково 500 доларів США +.
CrazyCoder

1
@rogerdpack, чому б просто не відкрити VisualVM (ви вже встановили його через jdk), вибрати програму та натиснути профіль?
Matsemann

3
Проблема з VisualVM, випущена плагіном VisualVM Launcher від Krasa: 1) під час запуску тестування завершено. 2) `` на льоту '' профілювання створює гарячі точки та важку для читання статистику часу процесора. У VisualVM є прапорець "редагувати конфігурацію", але я не бачу, як попросити плагін правильно розпочати тест - зачекайте, поки VisualVM запуститься і не буде готовий - завантажте конфігурацію профілювання тесту в VisualVM - запустіть тестовий код
smile-on

1
@ smile-on Ви знайшли рішення проблеми, коли ваші тести закінчуються до запуску VisualVM? У мене сама проблема.
Stephen Murby

27

Як зазначив Стівен Мербі, "проблема, коли ваші тести закінчуються до запуску VisualVM".

Так, цей плагін VisualVMLauncher не призупиняє тестування, поки VisualVM не запущено. Вам також може знадобитися час, щоб вручну змінити налаштування профілювання, специфічні для тесту. Рішення просте, ваш тест повинен зупинитися і почекати, поки ви вручну не скажете йому продовжувати. Є кілька способів зробити це:

1) поставити System.in.read (); як перший рядок тесту і як VisualVM готовий, натисніть Enter на консолі.

System.in.read();

2) Якщо програма запуску тестів не надає вам консолі, поставте почекати, поки не буде створено якийсь магічний файл.

3) Ви завжди можете легко грати зі сном ()

sleep(5 seconds);

Ця робота не надто зручна, але працює для мене, оскільки час від часу мені потрібно робити профіль. Основною причиною проблеми є архітектура плагінів як IDEA, так і VisualVM, які не вважаються спільними. Див. Обговорення з автором плагіна. Надія, що допоможе.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.