Профилировщики Java с открытым исходным кодом - PullRequest
89 голосов
/ 04 июня 2009

Что вы, ребята, можете порекомендовать использовать с Java?

Единственное требование - это должен быть открытый код или не слишком дорогая академическая лицензия.

Ответы [ 11 ]

60 голосов
/ 04 июня 2009

VisualVM, поставляемый с jdk6, имеет базовый профилировщик. VisualVM поставляется с jdk, поэтому если у вас установлен jdk6, скорее всего, он также установлен.

https://visualvm.github.io/

19 голосов
/ 10 июня 2009

у вас есть список здесь (перечисляя их ниже, ссылка в случае не работает)

  • JMemProf
  • JMP
  • DrMem
  • JTreeProfiler
  • Профилировщик NetBeans
  • JAMon API
  • JBoss Profiler
  • MessAdmin
  • УЛЬТРАКРАСНЫЙ
  • TomcatProbe
  • Java Interactive Profiler (JIP)
  • Profiler4j
  • Секундомер
  • JMeasurement
  • DJProf
  • TIJmp
  • Allmon
  • AppSpy
  • EurekaJ
  • Джепекс
  • OKTECH Profiler
  • Perf4j
16 голосов
/ 04 июня 2009

Ах. Netbeans Profiler , победитель developer.com в номинации «Продукт года», в 2009 году.

10 голосов
/ 04 июня 2009

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

5 голосов
/ 22 июля 2013

Инструмент с открытым исходным кодом jvmtop включает базовый консольный профилировщик. Пример вывода:

 JvmTop 0.7.0 alpha - 15:16:34,  amd64,  8 cpus, Linux 2.6.32-27, load avg 0.41
 http://code.google.com/p/jvmtop

 Profiling PID 24015: org.apache.catalina.startup.Bootstrap

  36.16% (    57.57s) hudson.model.AbstractBuild.calcChangeSet()
  30.36% (    48.33s) hudson.scm.SubversionChangeLogParser.parse()
   7.14% (    11.37s) org.kohsuke.stapler.jelly.JellyClassTearOff.parseScript()
   6.25% (     9.95s) net.sf.json.JSONObject.write()
   3.13% (     4.98s) ....kohsuke.stapler.jelly.CustomTagLibrary.loadJellyScri()
3 голосов
/ 04 июня 2009

Если вы ищете простой в использовании профилировщик с открытым исходным кодом, вы можете взглянуть на Jip ( Java Interactive Profiler ). Он публикуется под лицензией BSD. Я нашел это весьма полезным для небольших программ. По крайней мере, результаты, которые он дает, легче понять, чем вывод hprofs.

1 голос
/ 11 июня 2009

Java Mission Control , он бесплатный для разработки и интегрируется с Eclipse. У него очень низкие накладные расходы (<1%), поскольку он в любом случае совмещает данные, которые JVM собирает. </p>

Он очень прост в использовании и может также дать много информации, которую вы обычно не найдете в других инструментах профилирования, например, профилирование задержек, проверка оперативной памяти, подробная статистика gc

1 голос
/ 10 июня 2009

Этот быстрый, грязный и очень эффективный: просто возьмите несколько дампов потока или остановите программу несколько раз и посмотрите на следы стека.

0 голосов
/ 07 сентября 2015

JVM Monitor - это профилировщик Java, интегрированный с Eclipse для мониторинга использования процессора, потоков и памяти Java-приложениями.

Если требуется дальнейший глубокий анализ, вы можете использовать другие инструменты (например, TPTP , Memory Analyzer ) в качестве следующего шага.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...