Java 运行时监控,第 2 部分:编译后插装和性能监控

正如您在本系列(共三篇文章)的 第 1 部分 中所了解到的,监控 Java 应用程序的可用性和性能及其生产中的依赖性,这对于确保问题检测和加速问题诊断和修复至关重要。需要进行监视的类的源代码级插装具有 第 1 部分 所论述过的那些优势,但是这种方法通常都不可取或者不切实际。例如,很多您所感兴趣的监控点可能位于第三方组件中,而第三方组件的源代码您是不得而知的。在第 2 部分中,我着重介绍了无需修改原始源代码而插装 Java 类和资源的方法。

可选择的在源代码外编排插装的方法有:

  • 截取
  • 类包装
  • 字节码插装

本文使用了 第 1 部分 中呈现的 ITracer 接口来实现性能数据跟踪,依次举例阐明了这些技巧。





回页首


通过截取进行 Java 插装

截取 的基本前提是通过一个截取构造和收集传入的入站与出站调用信息,对特定的调用模式进行转换。一个基本的截取程序的实现会:

  1. 获取对入站调用请求的当前时间。
  2. 取回出站响应的当前时间。
  3. 将运行时间作为两次度量的增量计算出来。
  4. 将调用的运行时间提交给应用程序性能管理(APM)系统。

图 1 展示了该流程:


图 1. 性能数据收集截取程序的基本流程
性能数据收集截取程序的基本流程



本文转自IBM Developerworks中国

      请点击此处查看原文


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值