greys-anatomy
greys-anatomy copied to clipboard
【建议】希望grays能在方法的执行消耗上统计到行
有幸知道了grays,让我查找调用链里的耗时点变的相对容易,但美中不足的是对于一个方法内部的耗时统计是基于下一层的调用,这种方式有如下不足:
+---+[13,9ms]org.apache.cxf.jaxrs.client.AbstractClient:doRunInterceptorChain()
| +---[5,1ms]org.apache.cxf.jaxrs.client.AbstractClient:writeBody()
| `---[13,1ms]org.apache.cxf.jaxrs.client.AbstractClient:setupInInterceptorChain()
+---+[13,0ms]org.apache.cxf.jaxrs.client.AbstractClient:preProcessResult()
| `---[13,0ms]org.apache.cxf.jaxrs.client.AbstractClient:checkClientException()
doRunInterceptorChain()方法耗时9ms,但此节点下只统计到了两个1ms的耗时,其他7ms反映不出去了哪里
嗯,这个猜测你可能遇到了同步块或者锁。所以把时间吃了,当然也可能是gc的原因。这块确实可以优化掉,思路有的,但真心没有时间