Quel profileur Java est le meilleur: JProfiler ou YourKit? [fermé]


Quel profileur est le meilleur pour le profilage à usage général et l'analyse de tas? 90% de nos applications sont des programmes de ligne de commande autonomes avec une base de données substantielle et un traitement numérique. Les 10% restants sont des applications webapps / servlet container (avec très peu de JSP et PAS de SCRIPTS!). L'utilisateur cible serait ingénieur logiciel Sr avec 5-10 ans d'expérience dans l'industrie. Nous avons besoin de soutien que pour Sun JDK 5 et.

Au moment d'écrire cette question (2008-10-02), JProfiler était à 5.1.4 et YourKit était à 7.5. On dirait que YourKit 8.0 sera bientôt publié.

Author: Trenton, 2008-10-02

21 answers

J'ai utilisé JProfiler 4 et YourKit 7.5, et YourKit gagne haut la main. C'est tellement moins invasif que JProfile, en ce sens que je vais lancer des serveurs de production avec l'agent YourKit installé, ce que je ne ferais jamais avec JProfiler.

De plus, l'outil d'analyse fourni avec YourKit est plus intuitif (à mon avis), ce qui facilite l'obtention de la cause première des problèmes.

 37
Author: skaffman, 2008-10-02 20:32:12

Si vous êtes sur jdk >=1.6_07 vous pouvez également regarder jvisualvm qui est livré.

 17
Author: Steve B., 2008-10-02 18:20:10

Ayant utilisé à la fois JProfiler et Yourkit récemment, je trouve que yourkit est de loin supérieur pour l'analyse des problèmes de mémoire et préfère fortement jprofiler pour l'analyse des performances. L'analyse de la mémoire de Yourkit semble être beaucoup plus facile et intuitive. Pour l'analyse des performances sur yourkit, j'ai échoué à résoudre tout problème de performance que j'ai essayé de résoudre avec yourkit. JProfiler affiche des informations plus précises et concises pour l'analyse des performances avec le nombre exact de méthodes invocations et pourcentage de temps passé dans chaque méthode. Je n'ai pas encore trouvé cela dans yourkit. Il semble que yourkit donne simplement des informations d'échantillonnage qui ne sont pas précises à moins que vous ne mesuriez des milliers d'appels.

 15
Author: Jeramyn, 2010-05-20 14:56:05

J'ai beaucoup utilisé JProbe, OptimizeIt et YourKit et ce sont tous des outils capables. Sur les 3, mon favori tout autour est YourKit.

La seule fonctionnalité de JProbe est la possibilité de passer d'un instantané perf à une source annotée (avec des comptes et des timings). J'ai trouvé cela exceptionnellement utile.

 8
Author: Alex Miller, 2008-10-03 04:32:20

Aucun des outils autres que JXInsight n'effectue d'analyse de transaction de base de données réelle:

Http://www.jinspired.com/products/jxinsight/concurrency.html http://www.jinspired.com/products/jxinsight/olapvsoltp.html

La technologie de sondes de JXInsight est également la seule qui pourrait même fonctionner en production étant donné que nous surpassons netbeans profiler de 20x et yourkit de 100x dans SPECjvm2008 référence.

Http://blog.jinspired.com/?p=272

Je suis l'architecte de JXInsight donc bien sûr je suis complètement biaisé mais en même temps je suis probablement plus qualifié que la plupart dans l'industrie Java pour faire une telle affirmation puisque j'ai consacré les 8 dernières années à l'analyse des performances pour certaines des applications Java/J2EE les plus exigeantes en production.

Je dois souligner que JXInsight est conçu pour les ingénieurs de performance logicielle et pas seulement pour le session occasionnelle de profilage adhoc. Nous avons plus de 4000 propriétés système pour configurer le runtime et plus de 600 bibliothèques d'extensions technologiques, ce qui peut être exagéré, sauf si vous avez un problème complexe à résoudre et/ou si l'utilisation du même outil pour le développement, le test et la production est primordiale.

Cordialement,

William

 8
Author: , 2008-10-20 11:19:28

J'ai utilisé les deux et mon vote est maintenant définitivement JProfiler (dans la version actuelle 6) car il est plus facile à utiliser et a beaucoup de fonctionnalités supplémentaires utiles. Dans les versions précédentes, YourKit avait quelques avantages avec des snaphots plus grands, mais cela a disparu maintenant.

 5
Author: larsk, 2009-11-15 11:20:51

Avec Java 7 Update 40, Oracle a inclusJava mission control (à l'origine partie du JRockit JDK) - un outil de réglage des performances très puissant qui est capable de rivaliser avec yourkit/jprofiler.

Jetez un oeil et soyez surpris.

 5
Author: MRalwasser, 2014-06-09 01:04:29

Certainement YourKit ... Il a été capable d'ouvrir le vidage de tas de 4 concerts avec seulement 1g de tas utilisé. Alors que Jprofiler avec la même allocation de tas s'est écrasé!

 4
Author: Adnan Memon, 2009-09-12 02:48:42

J'ai utilisé yourkit et c'est un très beau profileur, le meilleur que j'ai jamais utilisé en java (j'en ai utilisé une variété d'autres au fil des ans). cela étant dit, je n'ai jamais utilisé jprofiler, donc je ne peux pas donner une comparaison directe.

 3
Author: james, 2008-10-02 20:18:57

Pour un profilage rapide et sale des programmes en ligne de commande, JIP fonctionne très bien.

 1
Author: thoroughly, 2008-10-02 18:41:12

Utilise JProfiler depuis des années et très heureux avec elle. IntelliJ semble basculer leur recommandation entre YourKit et JProfiler, donc je suppose que leurs ensembles de fonctionnalités sont similaires. Je crois qu'ils ont tous les deux une version d'essai.

 1
Author: Javamann, 2008-10-02 20:26:25

AVERTISSEMENT : Réponse alternative.

Ils ont divers produits pour le suivi/profilage de la production CONTRAIREMENT à d'autres outils de temps de développement principalement: http://www.jinspired.com/products/jxinsight/
Ce post sur theserverside sur JDBInsight: http://www.theserverside.com/news/thread.tss?thread_id=13488

AVERTISSEMENT : Je ne suis associé à cette société à aucun niveau.

 1
Author: anjanb, 2008-10-02 22:02:13

J'ai utilisé YourKit. Je n'ai pas utilisé JProfiler. J'ai déjà utilisé OptimizeIt. J'ai une très bonne opinion de YourKit. Il est très stable et bonne GUI et bonne liste de fonctionnalités. Une caractéristique unique que j'ai remarquée est le profilage du PROCESSEUR avec et sans temps d'attente (comme les E/S wais), y compris.

Son prix est également très raisonnable (environ environ 1100 $pour 5 licences je pense)

 1
Author: Rejeev Divakaran, 2008-10-03 03:49:18

YourKit est génial. Vous voudrez peut-être également consulter le profileur intégré à NetBeans it c'est assez cool.

 1
Author: stephmara, 2008-10-03 19:02:44

Yourkit Il est faible, stable, facile à installer sur la JVM à profiler (une seule dll) et puissant. Pour analyser les décharges de tas, c'est le seul profileur qui se rapproche de Eclipse Memory Analyzer.

 1
Author: kohlerm, 2008-10-10 15:15:51

Je n'ai utilisé que JProfiler (et certains JProbe). Pour autant que je sache, une limitation de YourKit est qu'ils ne semblent pas prendre en charge JDK 1.4.2. Ce n'est pas un problème pour beaucoup de gens, mais il pourrait être.

 0
Author: David M. Karr, 2008-10-02 18:58:39

+1 pour yourkit - - - en utilisant 7.0 sur les boîtes de développement dans Windows
JProfiler non utilisé pendant un certain temps cannot ne peut pas commenter car ils auraient pu s'améliorer entre-temps.

 0
Author: anjanb, 2008-10-02 21:49:29

Juste en aparté, vous voudrez peut-être considérer le profileur Netbeans it c'est plutôt bon. Mais je n'ai utilisé aucun des deux que vous avez mentionnés.

 0
Author: Will Hartung, 2008-10-02 22:15:02

J'utilise JProfiler et je le trouve globalement correct. Sa fonctionnalité" instrumentation dynamique " est terriblement biaisée pour les petites méthodes, cependant.

 0
Author: quant_dev, 2009-06-14 10:30:48

J'utilise le profileur TPTP. la meilleure caractéristique c'est que cela peut être intégré très facilement dans Eclipse, mais la mauvaise chose est que cela rend l'Éclipse de fonctionner plus lentement.

 0
Author: , 2009-09-01 16:07:51

Définitivement YourKit. C'est le plus intuitif et le plus stable!

 0
Author: pan40, 2014-01-13 07:55:32