Java开源运行分析工具(转)

FProfiler

FProfiler是一个非常快的Java profiler.它利用BCEL和log4j来记录每个方法从开始到结尾的日记.FProfiler可以用来在你的应用程序,Servlet,Applet...中找出hotspots.

更多FProfiler信息

JRat

JRat是一个Java Runtime分析工具包.它的目的是让开发者更好的明白Java程序动行时的状态.JRat包括但并不只局限于性能剖析.

更多JRat信息

EJP

EJP(Extensible Java Profiler ) 开源的Java剖析工具,它使用一个可升级的,可扩展的体系结构.一个Java剖析工具是用来优化Java程序性能的开发工具,它帮助你找出并移除运行开销大的部分.EJP基于JVMPI(Java Virtual Machine Profiler Interface )可用来监控Java应用程序一小部分的执行情况并把它用一些突出的元素在分层的树上表示出来.

更多EJP信息

JMemProf

JMemProf基于Web的内存剖析工具.JMemProf允许你撷取应用程序在运行时内存剖析信息.

更多JMemProf信息

P6Spy

P6Spy用来记录JDBC调用的日记信息.

更多P6Spy信息

SQL Profiler

SQL Profiler是一个快速剖析工具用来统计SQL查询以便了解在哪里创建索引才能提高效率.

更多SQL Profiler信息

IronEye SQL

IronEye SQL这个轻量级的Java工具提供所有流动在数据库与应用程序之间的SQL统计信息并用多张图表展现.IronEye SQL可以快速优化程序的性能.

更多IronEye SQL信息

JMP

JMP是一个针对Java的剖析器.它被用来追踪对象的使用和计算method的运行时间.它利用JVMPI接口来收集统计信息并与JVM相结合.JMP使用一个GTK+接口来显示运行的状态.

更多JMP信息

*J

*J一个Java程序动态分析工具。这个工具包是为两个主要的目的服务的,
1.帮助收集Java程序动态执行数据 
2.提供一个框架来快速简便地分析这些收集到的数据。

更多*J信息

JAMon

JAMon(Java应用程序监视器)是一个免费的,简单,高性能,线程安全的Java API.它让开发者可以方便地监控软件。JAMon用来测定程序的性能瓶颈,程序与用户的互动性和程序的可量测性。JAMon收集概要的统计数据比如执行时间(总的,平均的,最大的,最小的等),并发程序请求等。JAMon把这些统计数据以报表的形式展示出来。

更多JAMon信息

NetBeans Profiler

NetBeans剖析器项目把JFluid(源自Sun实现室)剖析技术结合到NetBeans IDE中.随着Java程序的大小与复杂性的增长,并要保持程序性能的需求变得越来越因难,因此进行软件的剖析必将成为开发周期中自然的一部分。

更多NetBeans Profiler信息

JTreeProfiler

一个基于JVMPI的Java剖析器。它在一个XML文件中收集所有方法被调用的记录并把它们展示TreeMap中。

更多JTreeProfiler信息

JUnitPerf

JUnitPerf是JUnit测试集的一个扩展工具。它包含在JUnit测试中用来完成性能测量与程序功能的可量测性。

更多JUnitPerf信息

Cougaar Memory Profiler

这个工具是用来调试在任何Java应用程序中的内存泄露和耗损.

更多Cougaar Memory Profiler信息

Atlassian Profiling

一个可在运行期剖析应程序的简单框架.它主要是运用在J2EE Web应用程序.

更多Atlassian Profiling信息

InfraRED

InfraRED是一个用AspectJ开发的监测J2EE应用程序性能和诊断性能问题的工具。

更多InfraRED信息

JBossProfiler

JBossProfiler是一个利用JVMPI系统基于log的剖析器。它使用一个C开发的代理从JVM捕获事件并把它们记录到磁盘中。一个运行在JBoss或其它机器上的Web应用程序可被用来分析这些日记。

更多JBossProfiler信息

JIP

JIP是一个代码剖析工具非常类似于JDK附带的hprof工具。它的特点包括:
 1.交互性,允许你在JVM运行过程中随时启动或结束剖析器而hprof是在程序启动时就开启JVM退出时结束。
 2.没有本地代码,大部分剖析器都有一些本地组件(native component)因为这些剖析器使用了需要利用本地组件的JVMPI (Java Virtual Machine Profiling Interface),而JIP是纯Java的,它利用了Java5™的一些特性。JIP对需要剖析的每一个类的每一个方法添加aspect拦截,这些aspect能够捕获执行数据。
 3.非常低的开销,在很多情况下hprof将会造成一个程序运行变慢20倍,而JIP是轻量级的几乎没有任何开销。
 4.JIP能够通过package/class名设置过滤器

更多JIP信息

Jwebap

Jwebap是一个用于J2EE工程(EJB以及WebModule系统)进行性能监控的组件,它有几个特点: 
1)基于ASM实现类的静态增强,可以无缝的部署于J2EE系统,对系统的开销几乎可以忽略 
2)部署和使用非常的简单,整个Jwebap的部署只需要部署jwebap_core_**.jar以及需要使用的各种plugin_**.jar,然后配置jwebap.xml和web.xml就可以完成所有的部署,比起绝大多数的profiling容易的多。 同时Jwebap提供Web Console进行整个Jwebap的管理和数据展现。在API层提供一套默认的视图框架供plugin开发者使用,可以只用Jar包就开发出相当漂亮的Web界面。 
3)Jwebap的开发分为两个部分Jwebap-core部分,Jwebap-plugin部分。core部分基于jdk14提供了类静态增强,轨迹生命管理,Plugin管理,视图框架等等,在这个基础上开发plugin。我觉得,好的profiling应该能够根据不同的人群按需使用,同时在功能不断复杂和强大的过程中仍然能够保证较轻的架子。 

更多Jwebap信息

VisualVM

VisualVM是一个集成多个JDK命令行工具的可视化工具。可以作为Java应用程序性能分析和运行监控的工具。开发人员可以利用它来监控,分析,获胜Thread-Dumps,浏览Heap dumps。系统管理员可以利用它来监测,控制Java应用程序横跨整个网络的情况。Java应用程序使用人员可以利用它来创建包含所有必要信息的Bug报告。

更多VisualVM信息

Perf4J

Perf4J是一个用于记录、监测和分析Java应用程序性能的开源工具。如同log4j类似于System.out.println()一样,Perf4J类似于System.currentTimeMillis()。 
Perf4J提供的功能包括:

  • 用于计时的简单的停止观测(stop watch)机制。
  • 用于解析日志文件的命令行工具,可以生成聚合统计和性能图表
  • 易于与常见的日志框架和facades集成:log4j、java.util.logging、Apache Commons Logging及SLF4J。
  • 运行时自定义log4j appender 产生统计数据和图表
  • 可以将性能统计暴露为JMX属性,当统计超出指定极限时发送通知。
  • 用于展现Web应用性能图表的Servlet。
  • 提供了@Profiled注解和一套客户化的方面(aspect),在处理AOP框架如AspectJ或Spring AOP时可以灵活插入计时语句。

更多Perf4J信息

Perfmon4j

Perfmon4j是一套性能监测工具,它能够诊断性能瓶颈,监控吞吐量和servlet响应时间。

更多Perfmon4j信息

jSonde

jSonde能够分析现有Java应用程序,然后生成UML序列图,测量性能(包括CPU和内存)和创建各种报表如:jar包依赖等。jSonde由两个组件组成:一个附加在Java进程中的代理用来收集相关信息,一个GUI程序用于查看由代理组件收集的结果信息。

更多jSonde信息

JavaMelody

JavaMelody能够在QA和实际运行生产环境监测Java或Java EE应用程序服务器。并以图表的形式显示:Java内存和Java CPU使用情况,用户Session数量,JDBC连接数,和http请求、sql请求、jsp页面与业务接口方法(EJB3、Spring、Guice)的执行数量,平均执行时间,错误百分比等。图表可以按天,周,月,年或自定义时间段查看。

更多JavaMelody信息

Basher

Basher是一个针对Java POJOs的分析和性能测试框架。适用于开发人员和测试人员使用,让他们能够快速,简便的进行线程测试,描述和衡量他们的代码在各种预先设定情景下的性能。

更多Basher信息

CheckThread

CheckThread是一个静态分析工具用于在编译期捕捉Java并发错误(concurrency bugs)。它使用Java注释或XML来为Java代码定制线程策略,能够在在编译时通过静态分析捕获尽可能多的线程错误。支持Ant,Eclipse和其它IDE插件(Intellij、NetBeans)。

收录时间:2010-09-24 16:34:32

更多CheckThread信息

JVM Monitor

JVM Monitor是一个Eclipse插件用于监控Java程序运行时的CPU占用,线程和内存的使用情况。它不仅可以监控本地程序的运行情况,还可以监控远程主机中的Java程序运行情况。

收录时间:2010-11-16 08:47:34

更多JVM Monitor信息

BTrace

BTrace是一个实时监控工具,使用了java agent 和jvm attach技术,可以在不停机的情况下实时监控线上程序的运行情况。并且做到最少的侵入,占用最少的系统资源。 Btrace基于动态字节码修改技术(Hotswap)来实现运行时java程序的跟踪和替换。Btrace的脚本是用纯java编写的,基于一套官方提供的annotation,使跟踪逻辑实现起来非常简单。简单来说,就是能在不改动当前程序的情况下,运行时的去监控Java程序的执行状况,例如可以做到内存状况的监控、方法调用的监控等等。

收录时间:2010-12-16 09:17:04

更多BTrace信息

Profiler4j

Profiler4j是一个用于分析Java程序CPU使用情况的开源工具。你可以定义规则来分析选择哪一个包,类和方法。在改变这些规则时不需要重启你的应用程序。易于使用只要添一个JVM参数到你的应用程序中。纯Java实现,没有依赖任何本地类库。它由两部分组成:一个分析代理与你的应用程序运行在同一个JVM中。另一个是一个远程控制台能够连接到远程代码并允许用户查看分析数据和改变设置。


收录时间:2011-01-20 20:41:59

更多Profiler4j信息

Caliper

Caliper是Google的开源框架用于编写,运行和查看JavaMicrobenchmarks测量的结果。


收录时间:2011-02-12 14:12:40

更多Caliper信息

http://www.open-open.com/59.htm

时间: 06-01

Java开源运行分析工具(转)的相关文章

Java静态代码分析工具Infer

Java静态代码分析工具Infer 作者:chszs,转载需注明.博客主页:http://blog.csdn.net/chszs 一.Infer介绍 Infer是Facebook最新开源的静态程序分析工具,用于在发布移动应用之前对代码进行分析,找出潜在的问题.目前Facebook使用此工具分析Facebook的App,包括Android.iOS.Facebook Messenger和Instagram等. Facebook称该工具帮助其每个月检查出应用潜在的数百个Bug,例如一些空指针访问.资源

常用 Java 静态代码分析工具的分析与比较

转载自: http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能.特性等方面对它们进行分析和比较,希望能够帮助 Java 软件开发人员了解静态代码分析工具,并选择合适的工具应用到软件开发中. 引言 在 Java 软件开发过程中,开发团队往往要花费大量的时间和精力发现并修改代

【转载】常用 Java 静态代码分析工具的分析与比较

摘自:http://www.oschina.net/question/129540_23043常用 Java 静态代码分析工具的分析与比较 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能.特性等方面对它们进行分析和比较,希望能够帮助 Java 软件开发人员了解静态代码分析工具,并选择合适的工具应用到软件开发中. 引言 在 Java 软件开发过程中,开发团

[转载] 常用 Java 静态代码分析工具的分析与比较

转载自http://www.oschina.net/question/129540_23043 简介: 本文首先介绍了静态代码分析的基本概念及主要技术,随后分别介绍了现有 4 种主流 Java 静态代码分析工具 (Checkstyle,FindBugs,PMD,Jtest),最后从功能.特性等方面对它们进行分析和比较,希望能够帮助 Java 软件开发人员了解静态代码分析工具,并选择合适的工具应用到软件开发中. 引言 在 Java 软件开发过程中,开发团队往往要花费大量的时间和精力发现并修改代码缺

Java线程Dump分析工具--jstack

jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式:      jstack [-l][F] pid      如果java程序崩溃生成core文件,jstack工具可以用来获得core文件的java stack和native stack的信息,从而可以轻松地知道java程序是如何崩溃和在程序何处发生问题.另外,jstack工具还可

如何分析android的OOM,与java静态代码分析工具

用MAT分析OOM 很多OOM看似发生在bitmap 分配得时候,但它一般不是rootcause.根本原因都在于本应该自动释放的资源,因为代码的错误,而导致某些对象一直被引用(Reference),例如 Android 内存优化,如何避免OOM 文章中提到的Activity 的mContext 引用. 当代码量很庞大的时候,单靠读代码查找错误是很困难的,所以必须借助于工具,这里介绍一款很好用的分析工具MAT. 1.下载MAT http://www.eclipse.org/mat/download

Java class文件分析工具 -- Classpy

Classpy Classpy是一个图形化的class文件分析工具,功能和javap类似,界面主要参考了Java Class Viewer: 为什么要重新创造轮子? 写这个工具花了将近一周的时间,那么为什么要浪费时间重新发明一个轮子呢?主要是因为下面几点原因: 通过自己写一个class解析器,可以彻底理解class文件格式和字节码 尝鲜Java8和JavaFX 8 Java Class Viewer比较老,不支持新的class文件格式 可以结合javap和Java Class Viewer的优点

java程序运行分析

使用工具:Eclipse Stardard 4.32版本(window7环境) 今天我们通过一个及其简单的例子来分析一个java程序是如何在我们的及其上跑起来的.部分内容是参考其他人的,会在参考的地方注明. 我的测试代码部分如下: public class Test { public static void main(String[] args) { new Test(); Int test =1;//只是为了测试方便,去掉IO部分的分析 } } 就是这么简单的代码,如何在我们的机器上跑起来,确

经典的开源协议分析工具:Wireshark.

2. TCP/IP协议经典书是:W.Richard Stevens 著<TCP/IP详解>三卷书,卷1是协议,卷2是实现,卷3是TCP事务协议等.还有官方的协议文档:RFC当然也可以在网上下载电子书.经典的开源协议分析工具:Wireshark.简单的开源TCP/IP协议栈:LwIP,或者Linux 1.0里包含的协议栈,当然也可以看看FreeBSD的TCP/IP协议栈 704ex 286wo 673av 604ek 659yl 363lh 957mk 564ge 854zm 932ox 711