java诊断工具-Arthas(trace命令)接口性能优化

本文详细介绍了Arthas的trace命令,用于追踪方法调用路径上的耗时,帮助定位性能瓶颈。内容包括:1) trace命令的基本用法,展示方法调用链路及执行时间;2) 如何限制输出次数以应对高并发场景;3) 如何开启追踪JDK方法;4) 调用耗时过滤条件设置;5) 使用正则表达式匹配多层调用。此外,还提供了接口性能调优案例链接和官方命令参考。

trace命令作用

输出方法路径上的每个节点上耗时。每次只能跟踪一级方法的调用链路。

1、trace demo.MathGame run

作用是持续打印出来,调用该方法的链路以及每步执行时间。

结果里的 #24,表示在run函数里,在源文件的第24行调用了primeFactors()函数。

[0.409579ms]表示该primeFactors方法执行的用时。

[2.069657ms]表示run方法执行的总用时。

找到耗时比较长的步骤进行优化

下图为通过jad demo.MathGame反编译类后的代码

 2、如果生产该接口并发访问量比较大,可以使用如下命令进行次数限制输出

trace demo.MathGame run -n 1

表示输出一次方法trace

3、默认情况下,trace不会包含jdk里的函数调用,如果希望trace jdk里的函数,需要显式设置--skipJDKMethod false

trace --skipJDKMethod false demo.MathGame run

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值