Apache Ignite: возможна слишком длинная пауза JVM: 714 миллисекунд - PullRequest
1 голос
/ 15 октября 2019

У меня настроен сервер Apache Ignite и приложение SpringBoot в качестве клиента в кластере Kubernetes.

Во время теста производительности я начинаю замечать, что приведенный ниже журнал часто отображается в приложении SpringBoot:

org.apache.ignite.internal.IgniteKernal: Possible too long JVM pause: 714 milliseconds

Согласно этой записи , это связано с тем, что "JVM испытывает длительные паузы сбора мусора", но команда инфраструктуры подтвердила мне, что мы включили +UseG1GC и +DisableExplicitGC в опции Server JVM, и эта строка журнала отображается только в приложении SpringBoot.

Пожалуйста, помогите по следующим вопросам:

  1. GC происходит в клиенте(Приложение SpringBoot) или узел сервера?
  2. Каким будет влияние длительной паузы GC?
  3. Что нужно сделать, чтобы предотвратить воздействие?
  4. Нужно ли настраиватьопция JVM в приложении SpringBoot?

1 Ответ

1 голос
/ 15 октября 2019

GC происходит в клиенте (приложение SpringBoot) или на узле сервера?

Ошибка GC будет записана в журнал узла, который испытывает проблемы.

Каково будет влияние длительной паузы ГХ?

Такие паузы снижают общую производительность. Также, если пауза будет длиннее, чем узел faultDetectionTimeout будет отключен от кластера.

Что нужно сделать, чтобы предотвратить воздействие?

Здесь собраны общие советы - https://apacheignite.readme.io/docs/jvm-and-system-tuning. Также вы можете включить в журналах GC полное представление о том, что происходит.

Нужно ли настраивать параметр JVM в приложении SpringBoot?

Похоже, что вы должны, потому что у вас есть проблемы с клиентским узлом.

...