Java Instrumentation
JPDA:Java平台调试体系结构
JPDA(Java Platform Debugger Architecture),即Java平台调试体系结构,由三个规范组成,分别是JVMTI(JVM Tool Interface),JDWP(Java Debug Wire Protocol),JDI(Java Debug Interface)。
进一步阅读列表
1. JPDA 体系概览
2. 深入Java调试体系
JVMTI:Java 虚拟机工具接口
JVMTI(JVM Tool Interface)是 Java 虚拟机所提供的 native 编程接口,可以实现在不修改业务代码的条件下,对业务代码进行调试和性能分析。
JVMTI的原理和使用方式为:定制一个Agent,在Agent中实现需要的函数指针。JVM运行时,会先启动Agent,再启动业务代码。业务代码运行到对应的接口时,会回调用Agent中的接口实现。
进一步阅读列表:
JDWP:Java 调试线协议
JDWP 是 Java Debug Wire Protocol 的缩写,它定义了调试器(debugger)和被调试的 Java 虚拟机(target vm)之间的通信协议。
在被调试端,JDWP实现了一个JVMTI agent,在JVM启动时加载agent,来通过JVMTI接口实现各种调试debug工作。
在调试器端,只要实现了JDWP规范,无论是什么语言,都可以来debugger。
JDI(Java Debug Interface)就是一个调试器端的JDWP的实现。
JDK中的调试工具jdb,也是使用JDI,来实现调试的。
进一步的阅读列表:
1. JDWP 协议及实现
JDI:Java调试接口
JDI(Java Debug Interface),即Java调试接口。大多数的JDI是用Java实现的,如eclipse IDE中的org.eclipse.jdt.debug.ui 和 org.eclipse.jdt.debug插件。
进一步的阅读列表
Multi-tenant
Java multi-tenant,即Java多租户技术,即在一个JVM中运行多个应用程序。
优点:通过部署来避免通常与使用多个标准 JVM 有关的内存消耗
限制:JNI,JVMTI和GUI程序,目前没有受到多租户的JDK的支持。
进一步的阅读列表:
1. Java 多租户简介
欢迎来到这里!
我们正在构建一个小众社区,大家在这里相互信任,以平等 • 自由 • 奔放的价值观进行分享交流。最终,希望大家能够找到与自己志同道合的伙伴,共同成长。
注册 关于