Java - Full GC (сборщик мусора) часто происходит за короткий промежуток времени, что приводит к снижению производительности

Я наблюдаю ненормальное поведение в нашей рабочей среде, которое приводит к большому количеству потоков на сервере, на котором работает Tomcat. Размер кучи 10,092,544K делится между новым поколением и поколением владения как 2,752,512K + 7,340,032K = 10,092,544K.

Я не понимаю, почему GC запускается сам по себе несколько раз, когда в куче достаточно памяти (как нового, так и старого поколения) (Full GC [PSYoungGen: 0K->0K (2752512K)] [ParOldGen: 2748534K->2748529K (7340032K)])

Как видите 0K->0K для молодого поколения и .27G -> .27G для старого поколения означает, что едва ли какие-либо объекты получают gc 'd и так много памяти доступно. (размер кучи 10G).

Поскольку Full GC работает несколько раз в течение короткого интервала, это приводит к снижению производительности, и, следовательно, приложение можетt обрабатывать входящие пользовательские запросы и, следовательно, высокие потоки на сервере, и в конечном итоге мы должны перезапустить сервер, чтобы выйти из этой ситуации.

Можете ли вы объяснить, что здесь происходит.

Вот вывод на gc.log.

, ,

Больше...... . ,

18 июля 14:52:38 fwprodcontent03 gc.log: 3172.122: [GC [PSYoungGen: 0K->0K (2752512K)] 2750855K->2750855K (10092544K), 0,0515920 с] [Время: пользователь = 0,32 сис = 0,01, реальное = 0,06 с]

18 июля 14:52:42 fwprodcontent03 gc.log: 3172.174: [Полный сборщик мусора [PSYoungGen: 0K->0K (2752512K)] [ParOldGen: 2750855K->2749937K (7340032K)] 2750855K->2749937K (10092544K) [PSPermGen: 262143K->262115 К (262144 КБ)], 4,1571260 с] [Время: пользователь = 44,29 сис = 0,06, реальное = 4,15 с]

18 июля 14:52:42 fwprodcontent03 gc.log: 3176.361: [GC [PSYoungGen: 9071K->1280K (2752512K)] 2759008K->2751217 КБ (10092544 КБ), 0,0989600 с] [Время: пользователь = 0,64 сис = 0,01, реальное = 0,10 с]

18 июля, 14:52:46 fwprodcontent03 gc.log: 3176.461: [Полный сборщик мусора [PSYoungGen: 1280K->0K (2752512K)] [ParOldGen: 2749937K->2748847K (7340032K)] 2751217K->2748847K (10092544K) [PSPermGen: 262143K->262121K (262144K)], 3,1331910 с] [время: пользователь = 31,25 сс = 0,01, реальное = 3,14 с]

18 июля 14:52:46 fwprodcontent03 gc.log: 3179.616: [GC [PSYoungGen: 2161K->288K (2752512K)] 2751008K->2749135K (10092544K), 0,0688890 с] [Время: пользователь = 0,42 сис = 0,02, реальное = 0,07 с]

18 июля, 14:52:49 fwprodcontent03 gc.log: 3179.686: [Полный сборщик мусора [PSYoungGen: 288K->0K (2752512K)] [ParOldGen: 2748847K->2748930K (7340032K)] 2749135K->2748930K (10092544K) [PSPermGen: 262143K->262143K (262144K)], 3,2369940 секунд] [Время с: пользователь = 32,23 сис = 0,02, реальное = 3,23 с]

18 июля 14:52:49 fwprodcontent03 gc.log: 3182.923: [GC [PSYoungGen: 0K->0K (2752512K)] 2748930K->2748930K (10092544K), 0,0607190 с] [Время: пользователь = 0,39 сис = 0,01, реальное = 0,06 с]

18 июля 14:52:57 fwprodcontent03 gc.log: 3182.984: [Полный сборщик мусора [PSYoungGen: 0K->0K (2752512K)] [ParOldGen: 2748930K->2748528K (7340032K)] 2748930K->2748528K (10092544K) [PSPermGen: 262143K->262141K (262144K)], 8,5377730 с] [Время: пользователь = 98,30 сс = 0,57, реальное = 8,54 с]

18 июля 14:52:58 fwprodcontent03 gc.log: 3191.533: [GC [PSYoungGen: 202K->128K (2752512K)] 2748731K->2748656K (10092544K), 0,1088430 с] [Время: пользователь = 0,67 сс = 0,00, реальное = 0,11 с]

18 июля 14:53:02 fwprodcontent03 gc.log: 3191.642: [Полный сборщик мусора [PSYoungGen: 128K->0K (2752512K)] [ParOldGen: 2748528K->2748534K (7340032K)] 2748656K->2748534K (10092544K) [PSPermGen: 262143K->262143K (262144K)], 3,1761780 с] [Время с: пользователь = 31,11 сс = 0,02, реальное = 3,18 с]

18 июля 14:53:02 fwprodcontent03 gc.log: 3194.820: [GC [PSYoungGen: 0K->0K (2752512K)] 2748534K->2748534 К (10092544 КБ), 0,0589010 с] [Время: пользователь = 0,38 сис = 0,01, реальное = 0,06 с]

18 июля 14:53:05 fwprodcontent03 gc.log: 3194.879: [Полный сборщик мусора [PSYoungGen: 0K->0K (2752512K)] [ParOldGen: 2748534K->2748529K (7340032K)] 2748534K->2748529K (10092544K) [PSPermGen: 262143K->262143K (262144K)], 3,0554520 с] [Время: пользователь = 30,72 сис = 0,03, реальное = 3,05 с] , , .Больше.....

Заранее спасибо.

Ответы на вопрос(1)

Ваш ответ на вопрос