Wenn Sie Open Source sagen, meinen Sie damit kostenlos? Sie haben unterschiedliche Bedeutungen. Ist Ihre Frage zu teuren Profilern?
Robert Munteanu
3
frei wie in Freiheit oder frei wie gratis? Oh die Verwirrung!
Tarski
Antworten:
61
Die mit jdk6 gelieferte VisualVM enthält einen grundlegenden Profiler. VisualVM wird mit dem JDK geliefert. Wenn Sie also das JDK6 installiert haben, haben Sie es wahrscheinlich auch installiert.
Der VisualVM-Profiler ist eine eigenständige Version von NetBeans. Es ist ein sehr guter Start.
Thorbjørn Ravn Andersen
2
Laden Sie auf jeden Fall die aktuellste Version herunter: visualvm.dev.java.net . Außerdem: Dies ist der Profiler, den NetBeans verwendet.
Peterdk
Ich habe es VisualVMzuvor mit Erfolg verwendet, aber es stürzte für mich ab, als ich versuchte, eine Tomcat-App zu profilieren. Dies funktionierte für mich: github.com/jvm-profiling-tools/honest-profiler
Lambart
21
Sie erhalten eine Liste haben hier (sie unten Listing, in Fall wird Verbindung unterbrochen)
Java verfügt über einen integrierten Profiler namens HProf . Ich finde es nützlich, die Ergebnisse mit den Ergebnissen von Profilern mit umfassenderen Funktionen zu vergleichen.
Ich habe HPROF jahrelang verwendet - und obwohl es nicht besonders hübsch ist, hat es mir geholfen, unzählige Speicher- und Leistungsprobleme zu lösen.
Gandalf
1
HPROF findet häufig verschiedene Punkte zur Optimierung. Ich benutze es oft, nachdem YourKit mir keine offensichtlichen Punkte mehr zur Optimierung gibt.
Ich konnte TPTP noch nie einrichten. Vielleicht bin ich zu dumm, um es zu benutzen.
quant_dev
@quant_dev: Ich hatte das gleiche Problem, habe es aber versehentlich geschafft, es plötzlich einzurichten (Eclipse neu gestartet oder was auch immer?). Aber als ich es benutzte, stellte sich heraus, dass es fast nutzlos war, unglaublich langsam und ressourcenhungrig bis zu dem Punkt, an dem ich Eclipse getötet hatte. Einige der nützlicheren Ansichten, die in mehreren Referenzen erwähnt wurden, die ich online gefunden habe, scheinen auch in der aktuellen Version, die mit Eclipse 3.5 funktioniert, nicht mehr zu existieren. Im Moment ist es also im Grunde nur ein riesiger BLOB der Nutzlosigkeit.
x4u
1
Eclipse TPTP sieht aus wie ein ausgereiftes Produkt, ist aber extrem langsam. Ich kann nicht verstehen warum ...
Roalt
4
Leider hat TPTP jetzt seine endgültige Version (v4.7.2). Es wurde archiviert und ist nicht mehr Teil der gleichzeitigen Veröffentlichung von Eclipse.
Joelittlejohn
3
Wenn Sie nach einem einfachen, benutzerfreundlichen Open Source-Profiler suchen, sollten Sie sich Jip ( Java Interactive Profiler ) ansehen . Es wird unter einer BSD-Lizenz veröffentlicht. Ich fand es sehr nützlich für kleine Programme. Zumindest sind die Ergebnisse viel einfacher zu verstehen als die Ausgabe von hprofs.
Java Mission Control kann kostenlos für die Entwicklung verwendet werden und ist in Eclipse integriert. Der Overhead ist sehr gering (<1%), da er sich auf die Daten stützt, die die JVM ohnehin sammelt.
Es ist sehr einfach zu bedienen und kann auch viele Informationen enthalten, die Sie normalerweise in anderen Profiling-Tools nicht finden, z. B. Latenzprofile, Online-Speicherinspektion und detaillierte GC-Statistiken
Dies ist schnell, schmutzig und sehr effektiv: Nehmen Sie einfach ein paar Thread-Dumps oder halten Sie das Programm mehrmals an und sehen Sie sich die Stack-Traces an.
Dieses Projekt ist ein Low-Overhead-Sampling-Profiler für Java, der nicht unter dem Safepoint-Bias-Problem leidet . Es verfügt über HotSpot-spezifische APIs zum Sammeln von Stack-Traces und zum Verfolgen von Speicherzuordnungen. Der Profiler arbeitet mit OpenJDK, Oracle JDK und anderen Java-Laufzeiten, die auf HotSpot JVM basieren.
OP bat um "nicht zu teure akademische Lizenz". Eine einzige akademische Lizenz für JProfiler kostet US $ 199
Stampfer
1
Er bat um etwas, das Open Source war oder eine kostengünstige akademische Lizenz hatte. Meiner Meinung nach sind 199 US-Dollar für ein Tool, das für eine normale Lizenz 499 US-Dollar kostet, ziemlich günstig.
Paul Morie
0
JVM Monitor ist ein in Eclipse integrierter Java-Profiler zur Überwachung der CPU-, Thread- und Speichernutzung von Java-Anwendungen.
Wenn eine weitere gründliche Analyse erforderlich ist, können Sie als nächsten Schritt andere Tools (z. B. TPTP , Memory Analyzer ) verwenden.
Antworten:
Die mit jdk6 gelieferte VisualVM enthält einen grundlegenden Profiler. VisualVM wird mit dem JDK geliefert. Wenn Sie also das JDK6 installiert haben, haben Sie es wahrscheinlich auch installiert.
https://visualvm.github.io/
quelle
VisualVM
zuvor mit Erfolg verwendet, aber es stürzte für mich ab, als ich versuchte, eine Tomcat-App zu profilieren. Dies funktionierte für mich: github.com/jvm-profiling-tools/honest-profilerSie erhalten eine Liste haben hier (sie unten Listing, in Fall wird Verbindung unterbrochen)
quelle
Ah. Netbeans Profiler , der Gewinner des "Produkts des Jahres" von developer.com im Jahr 2009.
quelle
Java verfügt über einen integrierten Profiler namens HProf . Ich finde es nützlich, die Ergebnisse mit den Ergebnissen von Profilern mit umfassenderen Funktionen zu vergleichen.
quelle
Das Open-Source-Tool jvmtop enthält einen grundlegenden Konsolenprofiler. Beispielausgabe:
quelle
Eclipse TPTP
Hier ist ein Artikel über Java Application Profiling mit TPTP und ein Tutorial zum Profiling von J2SE 5.0-basierten Anwendungen mit Eclipse TPTP .
quelle
Wenn Sie nach einem einfachen, benutzerfreundlichen Open Source-Profiler suchen, sollten Sie sich Jip ( Java Interactive Profiler ) ansehen . Es wird unter einer BSD-Lizenz veröffentlicht. Ich fand es sehr nützlich für kleine Programme. Zumindest sind die Ergebnisse viel einfacher zu verstehen als die Ausgabe von hprofs.
quelle
Java Mission Control kann kostenlos für die Entwicklung verwendet werden und ist in Eclipse integriert. Der Overhead ist sehr gering (<1%), da er sich auf die Daten stützt, die die JVM ohnehin sammelt.
Es ist sehr einfach zu bedienen und kann auch viele Informationen enthalten, die Sie normalerweise in anderen Profiling-Tools nicht finden, z. B. Latenzprofile, Online-Speicherinspektion und detaillierte GC-Statistiken
quelle
Dies ist schnell, schmutzig und sehr effektiv: Nehmen Sie einfach ein paar Thread-Dumps oder halten Sie das Programm mehrmals an und sehen Sie sich die Stack-Traces an.
quelle
Betrachten Sie die neuesten https://github.com/jvm-profiling-tools/async-profiler
Es ist auch in IntelliJ IDEA Ultimate integriert: https://www.jetbrains.com/help/idea/cpu-profiler.html .
Es gibt auch ähnliche https://github.com/jvm-profiling-tools/honest-profiler .
Der Vergleich zwischen
async-profiler
undhonest-profiler
: https://github.com/jvm-profiling-tools/async-profiler/issues/77quelle
Netbeans IDE enthält einen kostenlosen Profiler.
Wenn ich mich richtig erinnere, ist die akademische Lizenz für JProfiler (relativ) günstig.
quelle
JVM Monitor ist ein in Eclipse integrierter Java-Profiler zur Überwachung der CPU-, Thread- und Speichernutzung von Java-Anwendungen.
Wenn eine weitere gründliche Analyse erforderlich ist, können Sie als nächsten Schritt andere Tools (z. B. TPTP , Memory Analyzer ) verwenden.
quelle