探查器和 Java 检测之间的区别

Difference between profiler and Java instrumentation

Java 涉及在 运行 时间修改字节代码的检测用于监视代码的性能。 Java 中甚至使用了分析来监视代码的性能。我想知道探查器和 Java 仪器之间的显着区别是什么使 Java 仪器更有效。提前致谢:)

JVM instrumentation 功能在 JDK 1.5 中引入并且基于字节码检测。实际上,当加载 class 时,您可以更改相应的字节代码以引入方法执行分析或事件跟踪等功能。大多数 Java 应用程序性能管理 (APM) 解决方案都使用此机制来监视 JVM。

分析器通常使用 Instrumentation 来获取额外信息。 分析 是通过使用称为分析器(或代码分析器)的工具检测程序源代码或其二进制可执行形式来实现的。探查器可能会使用多种不同的技术,例如基于事件的、统计的、仪器化的和模拟的方法。