WEB开发网
开发学院操作系统Linux/Unix 最大化 AIX 上的 Java 性能,第 2 部分: 速度需求... 阅读

最大化 AIX 上的 Java 性能,第 2 部分: 速度需求

 2008-11-10 08:26:34 来源:WEB开发网   
核心提示: 本部分的其余内容将简单介绍一些常用的工具和如何检测特定于 Java 的问题,有关更多详细信息,最大化 AIX 上的 Java 性能,第 2 部分: 速度需求(2),请参见 AIX 5L Performance Tools Handbook 和 Understanding IBM eServ

本部分的其余内容将简单介绍一些常用的工具和如何检测特定于 Java 的问题。有关更多详细信息,请参见 AIX 5L Performance Tools Handbook 和 Understanding IBM eServer pSeries Performance and Sizing。

vmstat

vmstat 可用于提供有关系统的多种统计信息。对于特定于 CPU 的工作,可以尝试以下命令:

vmstat -t 1 3

此命令执行 3 次采样,每次相隔 1 秒钟,并带有时间戳 (-t)。您当然可以随心所欲地更改参数。下面显示了此命令的输出:kthr   memory       page       faults    cpu    time
----- ----------- ------------------------ ------------ ----------- --------
r b  avm  fre re pi po fr  sr cy in  sy cs us sy id wa hr mi se
0 0 45483  221  0  0  0  0  1  0 224 326 362 24 7 69 0 15:10:22
0 0 45483  220  0  0  0  0  0  0 159  83 53 1 1 98 0 15:10:23
2 0 45483  220  0  0  0  0  0  0 145 115 46 0 9 90 1 15:10:24

此输出中需要观察的一些内容包括:

列 r(运行队列)和 b(被阻塞)开始上升,尤其是高于 10。这通常是有太多进程在争用 CPU 的迹象。

如果 cs(上下文切换)与进程数量相比上升得非常高,您可能需要使用 vmtune 来优化系统。此主题超出了本系列的范围。

在 cpu 部分,us(用户时间)指示在程序中所花的时间。假设 Java 在 tprof 中位于列表顶部,您可能需要优化 Java 应用程序。

在 cpu 部分,如果 sys(系统时间)高于预期,并且您仍然还剩有 id(空闲)时间,这可能表示锁争用。检查 tprof 以了解内核时间中与锁相关的调用。您可能希望尝试运行 JVM 的多个实例。还可以在 javacore 文件中查找死锁。

上一页  1 2 3 4 5 6 7  下一页

Tags:最大化 AIX Java

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接