【发布时间】:2013-07-21 01:17:54
【问题描述】:
我有一个小型 Akka 应用程序,它在它的参与者之间传递许多消息,每个参与者都会对它接收到的数据进行一些计算。我想要的是分析这个应用程序,以查看代码的哪些部分占用最多的时间等等。
我尝试了 VisualVM,但我无法真正理解发生了什么。我添加了分析器输出的图片。
我的问题是
- 例如,第一行是什么,为什么要占用这么多时间? (scala.concurrent.forkjoin.ForkJoinPool.scan())
- 由于 Akka 应用程序的异步行为,它们能否被很好地分析?
- 例如,我可以查看一个特定参与者(-type)对于它收到的一个特定消息(-type)的工作时间吗?
- 还有其他用于分析 Akka 应用程序的最佳实践吗?
【问题讨论】: