IBM 的 Java 诊断,第 5 部分: 使用 Health Center 优化应用程序
2010-04-01 00:00:00 来源:WEB开发网核心提示: 检查代码执行一个方法配置文件将告诉您应用程序正在运行的是哪些代码,(它并不告诉您应用程序何时等待锁而不是运行您的代码,IBM 的 Java 诊断,第 5 部分: 使用 Health Center 优化应用程序(9),它也不会告诉您 JVM 何时收集垃圾而不是运行您的代码),如果有一个或两个方法消
检查代码执行
一个方法配置文件将告诉您应用程序正在运行的是哪些代码。(它并不告诉您应用程序何时等待锁而不是运行您的代码,它也不会告诉您 JVM 何时收集垃圾而不是运行您的代码)。如果有一个或两个方法消耗的 CPU 时间不正常,那么优化这些方法可以极大地改进性能。图 11 显示 Health Center 的 Profiling 透视图,它包含一个按照活跃程度(热度)排序的最活跃方法表和一组建议。
图 11. Profiling 透视图
查看原图(大图)
如果没有一个方法的颜色为橙色或红色,则应用程序的执行在几个方法之间相对均衡。优化最热的方法仍然是值得的,因为它们产生的性能也许还不够好。例如,某个方法可能过度使用 I/O。在本例中,某个方法占用的 CPU 资源明显比其他方法多,因此它的颜色为红色。通过图 11 中左边的 Self 列的值可以看出,在 JVM 检查的应用程序的工作时间中,42.1% 的时间用于执行 DataStore.storeData(I) 方法。右边的 Tree 列显示应用程序在 DataStore.storeData(I) 方法及其子方法上花费的时间。在一个简单的单线程应用程序中,100% 的 Tree 时间将用于 main() 方法。
代码优化策略
性能优化的目标是减少应用程序的工作。由于大部分工作发生在方法配置文件中排在前面的方法中,因此这些方法应该重点考虑。您可以放心地忽略方法配置文件中排在底部的方法。
更多精彩
赞助商链接