Высокое время отклика из-за GC в весенней загрузке приложения - PullRequest
0 голосов
/ 21 февраля 2019

У меня есть приложение с загрузочной пружиной, которое я запускаю внутри докеров в кластере openshift.В устойчивом состоянии существует N экземпляров приложения (скажем, N = 5), и запросы сбалансированы по нагрузке для этих N экземпляров.Все работает нормально, а время отклика низкое (~ 5 мс с общей пропускной способностью ~ 60 КБ).

Всякий раз, когда я добавляю новый экземпляр, время отклика кратковременно возрастает (до ~ 70 мс), а затем возвращается в нормальное состояние.

Я проверил статистику NewRelic JVM.

enter image description here

enter image description here

Как вы можетевидите, всякий раз, когда приложение запускается, есть GC-MarkSweep, который, я думаю, вероятно, связан с начальным высоким временем отклика.

Как мне избежать этого?Я использую Java 8. Будет ли использоваться другая справка по GC (G1) или я могу как-то настроить свои настройки GC?

1 Ответ

0 голосов
/ 21 февраля 2019

JVM сама требует большой работы при запуске, и Spring Boot также добавляет много своей работы и классов.Попробуйте удалить / отключить все неиспользуемые функции, так как волшебство автоконфигурации может вызвать много ненужных накладных расходов.

...