我在我的应用程序中使用AppD作为APM,在慢速事务报告中它显示了大多数调用,这不是我们的应用程序代码,我们正在调用开源库方法。例如:
google库的 com.google.common.reflect.TypeVisitor.visit
方法需要大约155毫秒的时间,而com.google.common.reflect.TypeToken.equals()
方法需要大约60毫秒。并且org.apache.tapestry5.internal.services.RenderQueueImpl.render()
需要将近50毫秒。
我想强调一下我已经检查过,我的服务器没有加载,CPU和内存使用率都非常低,这个时间用于非常少量的数据处理。
让我知道这背后的原因,以及如何优化我的应用程序的性能。
答案 0 :(得分:2)
反射(固有TypeVisitor
和TypeToken
类)在Java中总是很昂贵,请不要使用它。渲染时间似乎没问题。应用程序中存在高延迟可能有数千个原因,但您只提供了这么多信息,以便了解您可以获得的最佳答案。