BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Java SE/EE剖析工具JProfiler 7发布了:探针、线程和堆检查

| 作者 Bienvenido David III 关注 0 他的粉丝 ,译者 王丽娟 关注 0 他的粉丝 发布于 2011年8月29日. 估计阅读时间: 5 分钟 | CNUTCon 了解国内外一线大厂50+智能运维最新实践案例。

ej-technologies有限责任公司前段时间发布了JProfiler 7.0。JProfiler是一款Java SE/EE剖析工具,特色功能有CPU分析、内存分析、线程分析和VM遥测。7.0版本的新功能有:

  • 分析JDBC、JMS、JNDI、Servlet、文件、Socket和进程的内置探针。
  • 使用API自定义探针,也可以在JProfiler GUI里直接进行配置。
  • 调用树视图里分析执行者、AWT、SWT和线程启动的请求跟踪。
  • 堆遍历器里的检查视图。
  • 堆遍历器里,引用其他对象的引用视图能显示原始值和脚本过滤器。
  • 在堆遍历器的几个视图里都可以调用对象的toString()方法来显示值。
  • 重新设计了遍历器的引用视图和图表视图。
  • 调用树视图里可以查看历史信息。
  • 在调用树里分析长时间运行的AWT事件。
  • JProfiler可以直接输入脚本来执行“运行脚本”触发器的动作。
  • 线程历史视图中会显示线程组的名称。
  • 监视器历史视图里显示全部的行和列过滤器。
  • 在连接模式下,线程的创建现在会被记录下来。
  • JProfiler现在可以以独立应用的方式集成到NetBeans里,以支持32位和64位混合安装的情况。
  • WebSphere 8的集成向导。

JProfiler现在内置了用于分析JDBC、JMS、JNDI、Servlet、文件、Socket和进程的探针,可以记录和分析各子系统的数据。对长时间存活的对象来说,探针有一个时间轴视图。比如说,时间轴里显示的数据库连接能体现这些连接何时处于空闲状态、何时返回一条语句,或者执行批处理事务的时间段。探针还有一个事件视图,同时显示事件、线程和堆栈跟踪信息。举例来说,JDBC探针会显示连接数据库或执行查询的事件。探针还有一个展示详细信息和统计信息的对象视图、显示方法调用开销最为昂贵的热点视图,还有一个遥测视图,可以用图形的方式展示探针发布的遥测信息。这些内置的探针都可以在JProfiler的会话设置里进行配置。

JProfiler还支持自定义探针的创建。它提供了一套API,可用来开发自定义的探针,并把自定义探针和待分析的应用部署在一起。JProfiler同时提供了一个自定义探针向导,能让你在JProfiler GUI里自定义探针。你可以指定应用里要被拦截的方法,并在JProfiler代码编辑器的协助下创建会被调用的“拦截脚本”。你可以直接添加或修改自定义探针,而不需要重启待分析的应用。请注意,这个版本还添加了一个运行脚本触发器,这也是调用特定方法时执行代码的方式,可以替代简单的自定义探针。

JProfiler同时引入了请求跟踪的概念,这简化了并行应用和多线程应用的分析。请求跟踪会在调用树视图里把不同线程间的调用点和执行点连接起来。比如说,你可以使用此功能去确定完成一个异步任务所花费的时间,或者找出异步任务的起源。执行人、线程启动和AWT/SWT事件都可以用请求跟踪功能进行跟踪。

JProfiler的堆遍历器也进行了一些增强。

  • 在引用其他对象的引用视图和被其他对象引用的引用视图里,你都能看到对象列表,在引用其他对象的引用视图里还会直接显示原始数据。
  • 对象图现在是一个单独的视图,独立于现有的对象集。你可以添加或删除对象,也可以移除没有连接的项。你还可以搜索选中对象之间的路径。 
  • 现在在引用其他对象的引用视图里可以使用过滤器了。你可以把该对象限定为所选引用链的原始值,或者在活动的分析会话期间输入一个过滤器表达式。
  • 在引用视图中,现在可以在活动的分析会话期间调用对象的toString()方法求值并进行显示。
  • 新增了检查视图,可以在这个视图里检查现有的对象集。你可以查找重复的字符串、重复的原始包装器、重复数组、稀疏数组、零长度数组、键值有损坏的Map、弱引用对象、被引用太多的对象、自我引用和使用自定义过滤器表达式的对象。

标准许可证的最低价格是每个开发人员499美元。有10天试用期。如果你有老版本JProfiler支持服务的副本,可以免费升级旧的许可证。要是已经没有支持服务了,则需要购买升级。

JProfiler的开源替代品是Java的VisualVM。商业替代品还有YourKitJProbe

要想获取JProfiler 7.0的更多细节信息,请访问JProfiler的新特性变更记录页面。

查看英文原文:JProfiler 7: Probes, Threads and Heap Inspections

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT