哪个Java分析器更好:JProfiler还是YourKit?
哪种分析器更适合通用分析和堆分析? 我们的应用程序的90%是独立的命令行程序,具有大量的数据库和数字处理。 另外10%是webapps / servlet容器应用程序(只有很less的JSP和NO SCRIPLETS!)。 目标用户是具有5 – 10年行业经验的高级软件工程师。 我们只需要支持Sun JDK 5和。
至于写这个问题(2008-10-02),JProfiler是在5.1.4和YourKit是7.5。 看起来像YourKit 8.0即将发布。
我已经使用JProfiler 4和YourKit 7.5,YourKit胜手。 与JProfile相比,它的侵入性要小得多,因为我将安装YourKit代理来运行生产服务器,我永远不会用JProfiler。
此外,YourKit附带的分析工具更直观(在我看来),使得更容易找出问题的根本原因。
如果你在jdk> = 1.6_07你可能也想看看捆绑的jvisualvm。
在最近使用过JProfiler和Yourkit之后,我发现yourkit在内存问题分析方面要优越得多,并且非常希望jprofiler进行性能分析。 Yourkit的内存分析似乎更容易和直观。 为了对yourkit进行性能分析,我一直没有成功解决任何我曾经试图用yourkit解决的性能问题。 JProfiler使用方法调用的确切数量和每个方法花费的时间百分比显示更准确和简明的性能分析信息。 我还没有find这个在你的工具包。 看来yourkit只是提供抽样信息,这是不准确的,除非你正在测量成千上万的调用。
JXInsight以外的工具都不能执行真正的数据库事务分析:
http://www.jinspired.com/products/jxinsight/concurrency.html http://www.jinspired.com/products/jxinsight/olapvsoltp.html
JXInsight的Probes技术也是唯一一款甚至可以运行在生产中,考虑到我们在SPECjvm2008基准testing中执行netbeans profiler 20倍和yourkit 100x。
http://blog.jinspired.com/?p=272
我是JXInsight的架构师,所以当然我完全有偏见,但同时我可能比Java中的大多数人更有资格作出这样的声明,因为我已经投入了过去8年来对一些最要求Java / J2EE应用程序在生产中。
我应该指出,JXInsight是为软件性能工程师而devise的,而不仅仅是偶尔的adhoc分析会话。 我们拥有超过4000多个系统属性来configuration运行时和600多个技术扩展库,所以它可能会过度杀伤,除非在开发,testing和生产中有一个复杂的问题需要解决和/或使用相同的工具。
亲切的问候,
威廉
我已经广泛地使用了JProbe,OptimizeIt和YourKit,它们都是有能力的工具。 3,我最喜欢的是YourKit。
JProbe中的一个杀手function是从perf快照移到注释源(具有计数和计时)的能力。 我发现这是非常有用的。
我已经使用了两个,我现在的投票肯定是JProfiler(在当前版本6),因为它更容易使用,并有很多有用的附加function。 在之前的版本中,YourKit在更大的snapshots上有一些优势,但是现在已经不存在了。
在Java 7 Update 40中,Oracle包含了Java任务控制 (最初是JRockit JDK的一部分) – 一个非常强大的性能调优工具,可以与yourkit / jprofiler竞争。
看一看,感到惊讶。
我已经使用了你的工具包,这是一个非常好的分析器,我用过的最好的Java(我使用了多年来其他各种各样的)。 这是说,我从来没有使用jprofiler,所以我不能直接比较。
肯定YourKit …它能够打开4演出堆转储只有1克的堆使用。 虽然Jprofiler具有相同的堆分配崩溃!
对于命令行程序的快速和肮脏的分析, JIP工作得很好。
一直使用JProfiler多年,并非常高兴。 IntelliJ似乎在YourKit和JProfiler之间来回切换他们的build议,所以我猜他们的function集是相似的。 我相信他们都有试用版。
免责声明:备用答案。
他们有各种产品进行生产监控/分析UNLIKE其他主要的开发时间工具: http : //www.jinspired.com/products/jxinsight/
这个post在JDBInsight服务器上: http : //www.theserverside.com/news/thread.tss? thread_id = 13488
免责声明:我不在任何级别与这家公司有关联。
我已经使用YourKit。 我没有使用JProfiler。 我之前使用过OptimizeIt。 我对YourKit有很好的评价。 它是非常稳定和良好的GUI和良好的function列表。 我注意到一个独特的function是CPU分析有无等待时间(如I / O等待),包括。
它的价格也非常合理(我认为5个许可证约为1100美元)
Yourkit这是低开销,稳定,易于安装在JVM上进行分析(只有一个DLL)和强大的。 为了分析堆转储,它是接近Eclipse内存分析器的唯一的分析器。
我只使用JProfiler(和一些JProbe)。 据我所知,YourKit的一个局限是他们似乎不支持JDK 1.4.2。 这对许多人来说不是问题,但可能是这样。
除此之外,你可能要考虑Netbeans分析器 – 这是相当不错的。 但我没有使用你提到的两个中的任何一个。
YourKit很棒。 您可能还想查看内置于NetBeans的分析器 – 这非常酷。
我正在使用JProfiler,并发现它总体确定。 不过,对于小型方法来说,“dynamic仪表”function是非常偏向的。
我正在使用TPTP分析器。 最好的特性是它可以很容易地集成到Eclipse中,但坏事是它会让Eclipse运行速度变慢。
Definitly YourKit。 这是最直接和稳定的!
为您的工具包+1 – 在Windows的开发框中使用7.0
没有使用JProfiler一段时间 – 不能评论,因为他们可能在此期间改善。