`
Tristan_S
  • 浏览: 374280 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

Btrace 学习1

 
阅读更多
AOP就是一个Proxy模式,在被代理的方法前后作一些操作

Java中设计模式   装饰器 / 代理

ASM是一个Java字节码操作框架

Spring AspectJ cglib这些AOP框架都基于ASM

JVM运行步骤  类似于CPU寄存器
计算1+2
a, 将1 push到栈中
b,  将2 push到栈中
c, 调用ADD命令 取出栈中的数据相加并将结果放到栈顶
结果 栈中的1 2 已经不存在了 在栈顶有一个3

BTrace = sum attach API  +  Btrace脚本解析引擎 + ASM + JDK6 Instumentation

byteCode 插件查看字节码和asm


练习1
用cck工具修改class文件

练习2
用asm来修改class文件


TODO
学习classLoad
spring AOP IOC源代码
利用反射运行asm修改的class文件





  • cck.rar (709.3 KB)
  • 下载次数: 0
分享到:
评论

相关推荐

    btrace release-1.2.5.1

    6. samples:这是示例代码或脚本的集合,帮助用户了解如何在实际应用中使用BTrace,通过这些示例可以学习到BTrace的各种用法和功能。 7. docs:这个目录下通常包含BTrace的用户手册、API文档和其他技术文档,是学习...

    Btrace资源

    **Btrace资源详解** Btrace 是一个强大的Java应用程序动态...然而,为了充分利用这些工具,你需要学习Btrace的语法和使用方法,并理解如何编写有效的Btrace脚本。记得参考相关的文章或官方文档来获取更详细的指导。

    BTrace监控远程服务器使用实例

    在这个实例中,我们将学习如何使用BTrace来监控远程Linux服务器上的Tomcat应用。 首先,你需要了解的是BTrace的工作原理。BTrace会动态地生成和注入字节码到目标Java类的方法中,以此来添加监控逻辑。这些监控脚本...

    bTrace跟踪线程堆栈

    标题 "bTrace跟踪线程堆栈" 涉及到的是在Java开发中对线程堆栈进行监控和分析的技术,主要使用了开源工具bTrace。bTrace是一款强大的、无侵入式的Java运行时代码注入工具,允许开发者在运行中的Java应用上动态添加...

    BTrace自我总结测试代码

    1. **BTrace 的基本原理** BTrace 通过动态字节码增强来实现监控。它使用`com.sun.btrace.BTraceAnnotations`中的注解来标记要执行的脚本。这些注解定义了何时和如何执行探查点,比如`@OnMethod`用于指定在哪个方法...

    btrace-release-1.3.11.3.zip

    3. **编写监控脚本**:学习 Btrace 脚本语言,根据需求编写监控脚本。 4. **应用监控脚本**:通过 Btrace 的命令行工具,将监控脚本应用到目标 JVM 上。 5. **查看结果**:收集的数据可以通过日志或其他输出方式查看...

    btrace源代码

    1. **BTrace Agent**:这是BTrace的核心组件,它是一个Java代理,可以在运行时加载到目标应用上。BTrace Agent使用Java代理API(java.lang.instrument)来实现字节码级别的监控和修改。它在目标类的字节码中插入...

    btrace支持jdk1.6上运行的版本

    - **samples**:包含了一些示例脚本,帮助用户理解和学习如何编写 BTrace 脚本。 - **docs**:存放了 BTrace 的文档,包括用户指南和API参考。 - **bin**:包含了 BTrace 的可执行文件和相关的脚本,用于运行和管理 ...

    btrace.jar

    1. **安全性和性能影响**:尽管btrace尽量减少对应用性能的影响,但过度的监控仍然可能导致性能下降。因此,应该谨慎选择需要监控的事件,并确保只在必要时启用btrace。 2. **脚本编写**:BTrace脚本需要遵循一定的...

    btrace支持jdk1.7 linux下使用

    1. **BTrace原理**: BTrace通过字节码注入技术实现其功能。它会在类加载时动态修改类的字节码,插入追踪代码,而无需修改原有源代码。这使得BTrace成为一种非常灵活的诊断工具,尤其适合生产环境,因为它不会影响...

    btrace-bin.zip

    1. **动态性**:BTrace可以在运行时动态地插入代码到正在运行的Java应用中,无需停止或重新启动服务,极大地提高了调试效率。 2. **安全性**:BTrace遵循安全模型,只允许执行预定义的安全脚本,防止对系统造成破坏...

    BTrace-一个用于Java平台的安全动态的跟踪工具

    通过示例,我们可以学习如何使用BTrace进行性能分析。 总的来说,BTrace是一个强大的Java性能分析工具,它提供了动态字节码注入的手段,使得开发者能够实时监测和调试运行中的Java应用程序,从而更有效地进行性能...

    java程序运行跟踪利器Btrace分享

    1. **编写脚本**:Btrace使用一种基于Groovy的脚本语言,你可以通过学习官方提供的samples来快速上手。这些脚本通常包含探查点(probe),在特定的代码行或方法执行时被触发。 2. **查找Java进程**:使用`jps`命令...

    btrace-bin-1.3.11.tgz.tar.gz

    "samples"目录则提供了一些示例,方便用户学习如何使用BTrace进行性能分析和问题定位。 核心部分在于"bin"目录,这里包含了可执行的BTrace命令行工具。通过这些二进制文件,用户可以在Java应用程序运行时动态插入...

    BTrace的安装包Windows

    1. **下载BTrace**: 你可以从BTrace的官方网站或者其他可信的开源仓库下载适用于Windows系统的BTrace安装包。 2. **解压文件**: 将下载的压缩包解压到一个合适的目录,如`C:\Program Files\BTrace`。 3. **环境变量...

    BTrace二三事之二:OnMethod子类匹配BUG(怀疑)

    2. **理解BTrace的`OnMethod`探查**:深入学习BTrace文档,理解其工作原理,特别是如何处理子类和父类的方法匹配。 3. **分析源码**:如果博客文章没有提供足够的信息,可以查看BTrace的源代码,查找可能的bug或逻辑...

    btrace-demo:demo项目

    1. **BTrace简介**:BTrace是一个动态代码插桩工具,它允许开发者在运行时添加和修改Java代码,以便进行性能监控、日志记录、问题诊断等。BTrace使用安全的字节码注入技术,确保不会破坏程序的正常运行。 2. **工作...

    btrace-sr:BTrace 实战学习笔记,其号称“线上问题追踪神器”

    1. **BTrace 脚本基础**:学习BTrace首先要掌握它的脚本语言,包括如何定义探查点(Probes)、如何访问和操作对象、以及如何使用内置的探查方法(如`onMethodEnter`和`onMethodExit`)。 2. **探查点**:探查点是...

Global site tag (gtag.js) - Google Analytics