2024年6月12日发(作者:)

WebLogic Server Performance and Tuning

WebLogic Server性能调整

Tuning Java Virtual Machines (JVMs)

调整java虚拟机

Garbage Collection

垃圾回收

VM Heap Size and Garbage Collection

虚 拟机堆大小和垃圾回收

java堆是java对象存活的地方。其中存有live对象,dead对象和

空闲内存。当正运行的程序中某个对象不可达时,它就被认为是

“garbage”并且准备被回收。一个最优方法是调整垃圾回收时间在执行

时间的5%之内。

java虚拟机的堆大小决定了虚拟机垃圾回收的频率和用时。要在分析

垃圾回收的时间运行时间和频率后再将对大小调整到一个可接受的比率。

如果堆设置的大 了,full GC 一次就变慢,但发生频率低。如果根据你

的需要设置堆大小,则full GC一次就变快,但是发生频率高。

调整堆大小的目标是,使给定时间内weblogic server能服务的客户

数最大化,与此同时,使java虚拟机花在垃圾回收上的时间最小化。在

benchmarking内为了确保性能,你可能设置很大 的堆大小以确保在整个

benchmark运行中都不发生垃圾回收。

如果在没有堆空间的情况下运行,你会看到如下错误:

emoryError <>

emoryError <>

Exception in thread "main"

Choosing a Garbage Collection Scheme

选择垃圾回收计划

根据所使用的java虚拟机,可以从几个垃圾回收计划来管理你的系统

内存。例如,某些垃圾回收计划更适合特定应用。一旦,对应用程序的工

作负责和java 虚拟机所使用的不同垃圾回收算法有所理解,就可以优化

垃圾回收的配置。

Using Verbose Garbage Collection to Determine Heap Size

用verbose垃圾回收决定堆大小

verbose垃圾回收选项(verbosegc)使你可以精确测量用在垃圾回收的

时间和资源。为了确定最高效的对大小,可开启verbose垃圾回收, 并

重定向日志文件一进行诊断。

下面步骤说明了这个过程:

1.当你的应用程序运行在最大负载下的时候,监视weblogic性能。

2.用-verbosegc选项启用verbose垃圾回收输出并重定向标准错误和标

准输出到日志文件。