当我启动它时,我在jboss控制台上看到以下文本。原因似乎是由于garbace收集。那之前没有发生过。我既没有改变任何配置文件也没有任何源代码。有什么想法要解决? 正如你所看到的那样,在它开始持久性部分之后,我几乎等待了16分钟(12:37 - 12:21)。
12:21:53,438 INFO [PersistenceUnitDeployment] Starting persistence unit persistence.units:ear=ikarus.ear,unitName=ikarus
36.473: [GC 74716K->29865K(241856K), 0.0153986 secs]
37.818: [GC 75689K->35101K(240896K), 0.0124849 secs]
40.876: [GC 80925K->37018K(242304K), 0.0124359 secs]
41.176: [GC 84186K->38778K(241792K), 0.0096731 secs]
41.481: [GC 85946K->40591K(241152K), 0.0166358 secs]
41.621: [GC 86863K->43877K(241600K), 0.0127246 secs]
93.771: [GC 90149K->46121K(241856K), 0.0080522 secs]
324.787: [GC 92777K->46313K(241728K), 0.0025572 secs]
534.417: [GC 92804K->46457K(241920K), 0.0012326 secs]
788.777: [GC 93241K->46677K(241792K), 0.0017520 secs]
907.338: [GC 72305K->46805K(242688K), 0.0030763 secs]
907.342: [Full GC 46805K->46781K(242688K), 0.1523979 secs]
12:37:02,786 INFO [JmxKernelAbstraction] creating wrapper delegate for: org.jboss.ejb3.entity.PersistenceUnitDeployment
答案 0 :(得分:0)
在其间执行一些线程转储,以查看VM正在执行的操作以及挂起的位置。
垃圾收集可能不一定是由于速度减慢的原因,它可能只是暗示有另一个操作耗时太长而导致GC。检查线程转储以分析该间隔期间VM的活动。