<%@ page contentType="text/html;charset=gb2312" %>
BEA Logo
销售咨询热线:800-810-8878提交采购需求订阅购买下载全球站点
SolutionsSolutions Products Services Support Developers Partners Customers About BEA
专业咨询服务
客户支持服务
服务导航
活动与新闻
技术资源
AskBEA
常见技术问题
BEA产品文档
BEA新闻组
dev2dev 中文站点
dev2dev 英文站点
其它有用资源
联系我们
培训服务
最新培训
服务
 

服务器端的DGC分布式垃圾收集算法有两个调试参数:

1) DebugDGCEnrollment – 当一个远程对象的引用被创建或提供它的名字和OID时,记录日志。该参数在你希望知道一个特定的远程对象的OID时是有用的。

在WLS 8.1 中工作的例子:
<Apr 21, 2003 9:53:49 AM MDT> 
<Info> <RMI> <BEA-080026> <Exporting remote object examples.rmi.hello.HelloImpl with id 276.>

2) LogDGCStatistics– DGC分布式垃圾收集算法执行时记录日志。

在WLS 8.1 中工作的例子: 
<Apr 21, 2003 9:57:46 AM MDT> 
<Debug> <RMI> <BEA-080014> <Marked in: 751 ms> <Apr 21, 2003 9:58:35 AM MDT> 
<Info> <RMI> <BEA-080021> <Sweep freed: 0 objects in: 0 ms. 36 exported objects remain.>

*注:这些参数仅在WLS 8.1 中工作,在WLS 6.1 和 WLS 7.0 中不工作。



这两个参数都在KernelDebugMBean中配置,可以通过如下方式设置:

1) 在启动‘服务器端’WebLogic server时通过命令行设置. 
e.g -Dweblogic.debug.DebugDGCEnrollment=true 
-Dweblogic.debug.LogDGCStatistics=true

2)在config.xml 文件中配置:
<Server> 
<KernelDebug DebugDGCEnrollment = “true” LogDGCStatistics = “true” />
</Server>

*注:调试的关键是需要通过命令行增加下面的设置:
-Dweblogic.kernel.debug=true



在服务器端的DGC分布式垃圾收集算法根据weblogic.rjvm.HeartbeatMonitor 中定义的周期(milliseconds),规律的运行。空闲运行直至timeout的, 此参数在KernelMBean 中指定。缺省情况下,这个DGC分布式垃圾收集算法每四分钟执行一次(PeriodLength of 60000 milliseconds * DGCIdlePeriodsUntilTimeout of 4)

1) PeriodLength是KernelMBean的一个可配置参数,它可以通过如下方式配置:

(1) 在启动‘服务器端’WebLogic server时通过命令行设置
Dweblogic.PeriodLength=60000

(2) 在config.xml 文件中配置:
<Server> 
<Kernel PeriodLength=“60000” />
</Server>


2) DGCIdlePeriodsUntilTimeout 可以通过KernelMBean 的参数IdlePeriodsUntilTimeout配置. 它可以:

(1) 在启动‘服务器端’WebLogic server时通过命令行设置. 
e.g
Dweblogic. IdlePeriodsUntilTimeout =3
(2) 在config.xml 文件中配置:
<Server>
<Kernel IdlePeriodsUntilTimeout=“5” />
</Server> 

如果客户有处理DGC 问题的经验,推荐客户根据具体情况考虑是否需通过调优这些参数以帮助解决问题。一个原则是不改变这些参数,因为他们也被RJVM heartbeats 使用