我如何监视和纠正发生在我的RedHat Linux应用程序服务器中的完整GC …?

最近几天,我在我的RedHat Linux应用程序服务器中遇到了一些完整的Gc问题,没有任何负载,示例gclog如下所示

(完全GC:1194221.789:[质量:1075903K-> 1075903K(1075904K),2.6399480秒] 1560050K-> 1211377K(1560064K),[Perm:143373K-> 143373K(143616K )],2.6400630秒] [时间:user = 2.63 sys = 0.01,real = 2.64秒] 2012-02-24T10:37:47.452 + 0530:1194233.883:[Full GC 1194233.883:[tenured:1075903K-> 1075903K(1075904K) ,2.7868630秒] 1559508K-> 1215479K(1560064K),[Perm:143380K-> 143380K(143616K)],2.7869970sec] [Times:user = 2.79 sys = 0.00,real = 2.79sec]

Console.log中的条目显示如下所示的线程哑

堆高清新一代共484160K,使用307665K [0x826a0000,0xa33f0000,0xa33f0000)

eden空间430400K,使用了71%[0x826a0000,0x95314460,0x9caf0000)

从空间53760K,0%使用[0x9caf0000,0x9caf0000,0x9ff70000)

到空间53760K,使用0%[0x9ff70000,0x9ff70000,0xa33f0000)

终身代1075904K,使用1075904K [0xa33f0000,0xe4ea0000,0xe4ea0000)

空间1075904K,使用了100%[0xa33f0000,0xe4ea0000,0xe4ea0000,0xe4ea0000)

压缩烫发总共137728K,使用137662K [0xe4ea0000,0xed520000,0xf4ea0000)

空间137728K,99%使用[0xe4ea0000,0xed50fae0,0xed50fc00,0xed520000)

没有configuration共享空间。

请给我一些技巧来监视gclog并给出有关Full GC的基本知识。另外,请提供一些文档或教程链接来彻底理解这个概念。并且告诉我在增加堆大小之前,我必须注意哪些参数。 ???

垃圾收集不是一个“问题”,它是Java的核心function。

即使没有任何活动,它也会周期性运行 – 是的,完整的GC需要很长时间,但这就是为什么它每隔一小时左右才会发生一次。

查看J2SE官方的Oracle / Sun文档,了解它如何工作以及如何configuration它