WEB开发网
开发学院操作系统Linux/Unix 高级性能调优概念 阅读

高级性能调优概念

 2009-07-11 08:32:32 来源:WEB开发网   
核心提示: 前面几节讨论了需要调优的四个系统领域,其中之一是内存,高级性能调优概念(4),在 Java 应用程序环境中,服务器把内存分配给 Java 进程,还可以用 -verbose:gc 参数启动 JVM(这也是 Integrated Solutions Console 选项在幕后采用的方法),无论

前面几节讨论了需要调优的四个系统领域。其中之一是内存。在 Java 应用程序环境中,服务器把内存分配给 Java 进程,Java 进程负责运行应用程序代码。这个 Java 进程就是 JVM,它负责把内存分配给底层应用程序。

在操作系统级上,可能看到 1GB 内存被分配给一个 Java 进程。在这个进程内部,JVM 管理堆,堆为新对象提供内存。在创建对象时,对象被放在堆上。在销毁对象时,它们仍然留在堆上。JVM 会运行一个称为垃圾收集 的过程,垃圾收集标出所有创建的对象,然后清理堆的其余部分供以后的分配使用。在此时,堆可以扩展(如果垃圾收集没有回收新分配所需的足够内存)或收缩(如果满足特定条件,使 JVM 认为堆太大了)。

根据这个简化的垃圾收集定义可以推断出,在执行垃圾收集时系统不会执行任何应用程序工作。在运行垃圾收集期间,JVM 实际上会暂停。因此,许多 Java 调优措施都涉及决定堆的最佳内存大小以及调整垃圾收集过程。

垃圾收集过程调优的基本思路是,了解运行垃圾收集的频率以及触发它的条件,然后通过修改 JVM 设置尽可能降低垃圾收集的影响。

收集垃圾收集信息

为了了解垃圾收集对应用程序的影响,首先要收集关于何时及如何执行垃圾收集的信息。在 JVM 中启用详细垃圾收集日志记录,这会开始记录垃圾收集活动。在 IBM WebSphere™ Application Server 中,可以在管理控制台中找到这个设置:在 Integrated Solutions Console 中导航到 Application servers > server name > Process Definition > Java Virtual Machine,选择 Verbose Garbage Collection。

还可以用 -verbose:gc 参数启动 JVM(这也是 Integrated Solutions Console 选项在幕后采用的方法)。无论采用哪种方法,JVM 的输出现在都会包含垃圾收集信息。

上一页  1 2 3 4 5  下一页

Tags:高级 性能 概念

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