2015-04-30 152 views
-2

我们的J2EE应用程序存在一个巨大的问题。 每天早上11点,由于垃圾收集器的活动,我们的应用程序开始非常缓慢。 我们没有在那个小时运行的任何批处理任务,但我们有一个用于合并大量文件(.pdf,.doc,...)的特殊功能(使用Spring Integration框架编写),但我们已经已经检查过程结束后所有的流都关闭了。垃圾收集器和弹簧集成

请看看下面的垃圾收集器活动的一些日志:

2015-04-30T11:00:59.752+0200: 15957.260: [GC-- [PSYoungGen: 620734K->620734K(638336K)] 2017070K->2018870K(2036480K), 0.1506240 secs] [Times: user=0.19 sys=0.00, real=0.15 secs] 
2015-04-30T11:00:59.902+0200: 15957.411: [Full GC [PSYoungGen: 620734K->45503K(638336K)] [ParOldGen: 1398136K->1398119K(1398144K)] 2018870K->1443622K(2036480K) [PSPermGen: 307483K->307454K(307776K)], 1.4963560 secs] [Times: user=2.65 sys=0.00, real=1.50 secs] 
2015-04-30T11:01:02.271+0200: 15959.779: [Full GC [PSYoungGen: 622271K->46624K(638336K)] [ParOldGen: 1398122K->1398142K(1398144K)] 2020393K->1444767K(2036480K) [PSPermGen: 307456K->307456K(307776K)], 1.2484490 secs] [Times: user=2.18 sys=0.00, real=1.25 secs] 
2015-04-30T11:01:04.181+0200: 15961.690: [Full GC [PSYoungGen: 576768K->45206K(638336K)] [ParOldGen: 1398143K->1398130K(1398144K)] 1974911K->1443337K(2036480K) [PSPermGen: 307456K->307456K(307776K)], 1.2151760 secs] [Times: user=2.13 sys=0.00, real=1.21 secs] 
2015-04-30T11:01:05.958+0200: 15963.466: [Full GC [PSYoungGen: 576768K->47369K(638336K)] [ParOldGen: 1398130K->1398123K(1398144K)] 1974898K->1445493K(2036480K) [PSPermGen: 307456K->307456K(307776K)], 1.2177990 secs] [Times: user=2.13 sys=0.00, real=1.21 secs] 
2015-04-30T11:01:07.782+0200: 15965.291: [Full GC [PSYoungGen: 576768K->46062K(638336K)] [ParOldGen: 1398123K->1398136K(1398144K)] 1974891K->1444199K(2036480K) [PSPermGen: 307460K->307460K(307776K)], 1.2808160 secs] [Times: user=2.25 sys=0.00, real=1.28 secs] 
2015-04-30T11:01:09.682+0200: 15967.191: [Full GC [PSYoungGen: 576768K->46868K(638336K)] [ParOldGen: 1398136K->1398143K(1398144K)] 1974904K->1445012K(2036480K) [PSPermGen: 307460K->307460K(307776K)], 1.2058500 secs] [Times: user=2.11 sys=0.00, real=1.21 secs] 
2015-04-30T11:01:11.588+0200: 15969.097: [Full GC [PSYoungGen: 576768K->50009K(638336K)] [ParOldGen: 1398144K->1398142K(1398144K)] 1974912K->1448152K(2036480K) [PSPermGen: 307469K->307469K(307776K)], 1.3628080 secs] [Times: user=2.39 sys=0.00, real=1.36 secs] 
2015-04-30T11:01:13.616+0200: 15971.124: [Full GC [PSYoungGen: 576768K->47592K(638336K)] [ParOldGen: 1398142K->1398099K(1398144K)] 1974910K->1445691K(2036480K) [PSPermGen: 307469K->307467K(307776K)], 1.6644920 secs] [Times: user=2.95 sys=0.00, real=1.67 secs] 
2015-04-30T11:01:16.046+0200: 15973.555: [Full GC [PSYoungGen: 576768K->49560K(638336K)] [ParOldGen: 1398143K->1397961K(1398144K)] 1974911K->1447521K(2036480K) [PSPermGen: 307470K->307470K(307776K)], 1.3118380 secs] [Times: user=2.30 sys=0.00, real=1.32 secs] 
2015-04-30T11:01:18.204+0200: 15975.712: [Full GC [PSYoungGen: 576768K->25394K(638336K)] [ParOldGen: 1397965K->1397950K(1398144K)] 1974733K->1423344K(2036480K) [PSPermGen: 307470K->307467K(307776K)], 1.2144450 secs] [Times: user=2.11 sys=0.00, real=1.21 secs] 
2015-04-30T11:01:20.284+0200: 15977.793: [Full GC [PSYoungGen: 576768K->32890K(638336K)] [ParOldGen: 1398082K->1398142K(1398144K)] 1974850K->1431033K(2036480K) [PSPermGen: 307467K->307467K(307776K)], 1.1964720 secs] [Times: user=2.10 sys=0.00, real=1.20 secs] 
2015-04-30T11:01:21.485+0200: 15978.994: [Full GC [PSYoungGen: 40616K->32969K(638336K)] [ParOldGen: 1398142K->1398141K(1398144K)] 1438759K->1431111K(2036480K) [PSPermGen: 307467K->307467K(307776K)], 1.1652960 secs] [Times: user=2.03 sys=0.00, real=1.17 secs] 
2015-04-30T11:01:23.397+0200: 15980.905: [Full GC [PSYoungGen: 576768K->58824K(638336K)] [ParOldGen: 1398143K->1397943K(1398144K)] 1974911K->1456768K(2036480K) [PSPermGen: 307467K->307467K(307776K)], 1.3021250 secs] [Times: user=2.31 sys=0.00, real=1.30 secs] 
2015-04-30T11:01:24.717+0200: 15982.225: [Full GC [PSYoungGen: 68465K->53216K(638336K)] [ParOldGen: 1397943K->1398143K(1398144K)] 1466409K->1451359K(2036480K) [PSPermGen: 307467K->307467K(307776K)], 1.2082250 secs] [Times: user=2.10 sys=0.00, real=1.21 secs] 
2015-04-30T11:01:27.386+0200: 15984.894: [Full GC [PSYoungGen: 576768K->41286K(638336K)] [ParOldGen: 1398143K->1397982K(1398144K)] 1974911K->1439268K(2036480K) [PSPermGen: 307467K->307467K(307776K)], 1.2909460 secs] [Times: user=2.29 sys=0.00, real=1.29 secs] 
2015-04-30T11:01:29.271+0200: 15986.779: [Full GC [PSYoungGen: 576768K->27766K(638336K)] [ParOldGen: 1397982K->1398142K(1398144K)] 1974750K->1425908K(2036480K) [PSPermGen: 307467K->307467K(307776K)], 1.1639540 secs] [Times: user=2.03 sys=0.00, real=1.16 secs] 
2015-04-30T11:01:31.260+0200: 15988.769: [Full GC [PSYoungGen: 576768K->36699K(638336K)] [ParOldGen: 1398142K->1398084K(1398144K)] 1974910K->1434783K(2036480K) [PSPermGen: 307470K->307470K(307776K)], 1.2504410 secs] [Times: user=2.20 sys=0.00, real=1.26 secs] 
2015-04-30T11:01:33.183+0200: 15990.691: [Full GC [PSYoungGen: 576768K->25671K(638336K)] [ParOldGen: 1398084K->1398142K(1398144K)] 1974852K->1423814K(2036480K) [PSPermGen: 307470K->307470K(307776K)], 1.2439080 secs] [Times: user=2.19 sys=0.00, real=1.24 secs] 
2015-04-30T11:01:35.113+0200: 15992.622: [Full GC [PSYoungGen: 576768K->38723K(638336K)] [ParOldGen: 1398142K->1398140K(1398144K)] 1974910K->1436864K(2036480K) [PSPermGen: 307470K->307470K(307776K)], 1.2855140 secs] [Times: user=2.25 sys=0.00, real=1.28 secs] 
2015-04-30T11:01:36.975+0200: 15994.484: [Full GC [PSYoungGen: 576768K->38745K(638336K)] [ParOldGen: 1398140K->1398084K(1398144K)] 1974908K->1436829K(2036480K) [PSPermGen: 307470K->307470K(307776K)], 1.2950800 secs] [Times: user=2.28 sys=0.00, real=1.29 secs] 
2015-04-30T11:01:38.964+0200: 15996.472: [Full GC [PSYoungGen: 576768K->33921K(638336K)] [ParOldGen: 1398084K->1398143K(1398144K)] 1974852K->1432065K(2036480K) [PSPermGen: 307470K->307470K(307776K)], 1.2367630 secs] [Times: user=2.17 sys=0.00, real=1.23 secs] 
2015-04-30T11:01:40.830+0200: 15998.338: [Full GC [PSYoungGen: 576768K->33497K(638336K)] [ParOldGen: 1398143K->1398141K(1398144K)] 1974911K->1431638K(2036480K) [PSPermGen: 307503K->307503K(307840K)], 1.2936280 secs] [Times: user=2.25 sys=0.00, real=1.30 secs] 
2015-04-30T11:01:42.832+0200: 16000.341: [Full GC [PSYoungGen: 576768K->38106K(638336K)] [ParOldGen: 1398141K->1398131K(1398144K)] 1974909K->1436237K(2036480K) [PSPermGen: 307508K->307508K(307840K)], 1.3531370 secs] [Times: user=2.34 sys=0.00, real=1.35 secs] 
2015-04-30T11:01:44.846+0200: 16002.354: [Full GC [PSYoungGen: 576768K->29489K(638336K)] [ParOldGen: 1398131K->1398140K(1398144K)] 1974899K->1427630K(2036480K) [PSPermGen: 307508K->307508K(307840K)], 1.1770150 secs] [Times: user=2.06 sys=0.00, real=1.18 secs] 
2015-04-30T11:01:46.800+0200: 16004.308: [Full GC [PSYoungGen: 576768K->36730K(638336K)] [ParOldGen: 1398140K->1398143K(1398144K)] 1974908K->1434874K(2036480K) [PSPermGen: 307508K->307508K(307840K)], 1.2761790 secs] [Times: user=2.26 sys=0.00, real=1.28 secs] 
2015-04-30T11:01:48.919+0200: 16006.428: [Full GC [PSYoungGen: 576768K->46650K(638336K)] [ParOldGen: 1398143K->1397908K(1398144K)] 1974911K->1444558K(2036480K) [PSPermGen: 307508K->307508K(307840K)], 1.3290270 secs] [Times: user=2.35 sys=0.00, real=1.33 secs] 
2015-04-30T11:01:50.901+0200: 16008.409: [Full GC [PSYoungGen: 576768K->43550K(638336K)] [ParOldGen: 1397908K->1398142K(1398144K)] 1974676K->1441693K(2036480K) [PSPermGen: 307508K->307508K(307840K)], 1.2121480 secs] [Times: user=2.11 sys=0.00, real=1.21 secs] 
2015-04-30T11:01:52.792+0200: 16010.301: [Full GC [PSYoungGen: 576768K->32252K(638336K)] [ParOldGen: 1398142K->1398142K(1398144K)] 1974910K->1430394K(2036480K) [PSPermGen: 307508K->307508K(307840K)], 1.1738220 secs] [Times: user=2.06 sys=0.00, real=1.18 secs] 
2015-04-30T11:01:54.698+0200: 16012.207: [Full GC [PSYoungGen: 576768K->40351K(638336K)] [ParOldGen: 1398142K->1398122K(1398144K)] 1974910K->1438473K(2036480K) [PSPermGen: 307508K->307508K(307840K)], 1.2184120 secs] [Times: user=2.13 sys=0.00, real=1.22 secs] 
2015-04-30T11:01:56.581+0200: 16014.090: [Full GC [PSYoungGen: 576768K->51145K(638336K)] [ParOldGen: 1398122K->1397818K(1398144K)] 1974890K->1448963K(2036480K) [PSPermGen: 307508K->307508K(307776K)], 1.2204630 secs] [Times: user=2.15 sys=0.00, real=1.22 secs] 
2015-04-30T11:01:58.522+0200: 16016.030: [Full GC [PSYoungGen: 576768K->45045K(638336K)] [ParOldGen: 1397818K->1396518K(1398144K)] 1974586K->1441563K(2036480K) [PSPermGen: 307524K->307504K(307840K)], 1.3422560 secs] [Times: user=2.37 sys=0.00, real=1.34 secs] 
2015-04-30T11:02:00.559+0200: 16018.068: [GC [PSYoungGen: 576768K->59954K(636736K)] 1973802K->1456988K(2034880K), 0.2391820 secs] [Times: user=0.47 sys=0.00, real=0.24 secs] 
2015-04-30T11:02:01.545+0200: 16019.054: [Full GC [PSYoungGen: 636722K->44520K(636736K)] [ParOldGen: 1397748K->1398143K(1398144K)] 2034470K->1442663K(2034880K) [PSPermGen: 307508K->307508K(307840K)], 1.3049690 secs] [Times: user=2.29 sys=0.01, real=1.30 secs] 
2015-04-30T11:02:03.785+0200: 16021.293: [Full GC [PSYoungGen: 576768K->46249K(636736K)] [ParOldGen: 1398143K->1398141K(1398144K)] 1974911K->1444390K(2034880K) [PSPermGen: 307508K->307508K(307840K)], 1.2749070 secs] [Times: user=2.25 sys=0.00, real=1.28 secs] 
2015-04-30T11:02:05.665+0200: 16023.174: [Full GC [PSYoungGen: 576768K->47378K(636736K)] [ParOldGen: 1398143K->1398143K(1398144K)] 1974911K->1445522K(2034880K) [PSPermGen: 307523K->307523K(307840K)], 1.2608770 secs] [Times: user=2.21 sys=0.00, real=1.27 secs] 
2015-04-30T11:02:07.660+0200: 16025.169: [Full GC [PSYoungGen: 576768K->34799K(636736K)] [ParOldGen: 1398143K->1398141K(1398144K)] 1974911K->1432940K(2034880K) [PSPermGen: 307566K->307566K(307904K)], 1.3548270 secs] [Times: user=2.37 sys=0.00, real=1.35 secs] 
2015-04-30T11:02:09.740+0200: 16027.249: [Full GC [PSYoungGen: 576768K->47591K(636736K)] [ParOldGen: 1398141K->1398140K(1398144K)] 1974909K->1445731K(2034880K) [PSPermGen: 307566K->307566K(307904K)], 1.3396300 secs] [Times: user=2.35 sys=0.00, real=1.34 secs] 

任何possibie导致任何提示?

我们的应用是建立在: - Java的1.7 - 春3.2.8 - 春天的Webflow 2.3.2 - Spring集成3.0.2 - JBOSS EAP6

PS:抱歉,我的英语不好: )

回答

0

在看到上面粘贴的GC循环时,似乎执行了过多的GC操作,这直接影响了应用程序的性能。过度的GC和压实总是会导致应用程序响应缓慢,因为GC操作会停止世界的进程。看来你正在使用gencon策略(年轻/旧区域)。如果年轻的地区很小,那么它会导致大量的清除gc操作。如果您需要在GC日志的详细分析,然后加载它GCMV工具,让您的系统的GC行为

http://www.ibm.com/developerworks/java/jdk/tools/gcmv/

0

因为你的老一代已满,这里明显的答案是,当这些文件被合并,您需要比您当前分配JVM更多的内存。尝试使用-Xmx运行java来增加堆大小,例如-Xmx4G以使用4 GB堆。

如果您仍然遇到问题,尽管使用了堆,但您认为堆足够大,调查填充堆的最佳方法是进行堆转储(运行jmap -dump:format=b,file=dump.bin <jvm pid>)并使用Eclipse MAT对其进行分析。