我正在使用Mac OS X 10.5.8上的Eclipse Europa开发Java应用程序和J2EE webapp。 webapp为我编写的Java应用程序提供RESTful API层。我正在使用Eclipse内部的tomcat运行webapp。
似乎存在一些严重的性能问题,我想使用分析器来缩小这些问题,但我找不到任何合适的工作方式。我查看了以下选项:
我查看了这个列表: here 但是有太多的选择和太少的时间来完成它们所有!!
根据我的环境,有没有人知道一个易于使用的可视化Java分析器,它实际上可以在Mac上运行?我很想听听你的建议。
非常感谢你们, 阿里
答案 0 :(得分:11)
如果Java 6是一个选项,也许你可以试试VisualVM。这篇不错的Setting up Sun's VisualVM on Mac OSX博客文章解释了如何让它在Mac OSX上运行。 击>
答案 1 :(得分:5)
我在Mac OS X上使用JProfiler,我对它非常满意。我不知道你为什么写它不支持OS X,他们甚至在他们的网站上有一个DMG下载。这是一个昂贵的软件 - 我建议联系他们的销售。大多数公司都乐于向开源项目捐赠许可证。
鲨鱼是旧工具。最新的XCode附带仪器。基于DTrace的华丽设计的分析应用程序。它可以描述Java应用程序,但是你不会接近使用Java工具构建的工具的详细程度。
另一种选择是使用TPTP。 Eclipse插件适用于OS X,但代理控制器不适用。您可以运行虚拟化Linux(我使用VMWare Fusion,但您可以使用FOSS替代方案,Virtualbox)并在那里运行Tomcat。您可以在OS X上连接TPTP并分析在Linux机器上运行的应用程序。
答案 2 :(得分:4)
我推荐Yourkit。它是迄今为止我使用过的最好的Java分析器(虽然它有点贵)。
虽然需要花钱,但您可以获得试用许可证。
编辑:看起来他们提供开源许可证(免费)。如果你能得到它,那就去吧:http://www.yourkit.com/purchase/index.jsp
答案 3 :(得分:1)
请注意,Shark不适用于在64位模式下运行的Java。对于OS X 10.6,java默认以64位运行。如果在启动时给java“-d32”标志,它将以32位模式运行。将其与“-agentlib:Shark”标志相结合,然后启动Shark。您现在应该能够使用OS X 10.6和Shark来分析您的Java程序。如果可以接受以32位模式分析Java,那么这可能对您有用。
答案 4 :(得分:0)
我不确定让项目在Netbeans下工作有多难......但是如果你可以毫不费力地做到这一点,那么分析器应该没有问题。
VisualVM和Yourkit,正如其他人所指出的那样,也很好。