У меня есть сервер, который запускает только некоторые процессы, которые не имеют доступа к пользователю.Поэтому пропускная способность не имеет значения.Большую часть времени сервер выполняет только небольшие задания, поэтому большую часть времени он выполняет незначительные операции.Время от времени появляется большая работа, поэтому для выполнения этого процесса требуется главный управляющий.Я видел случай, как будто никогда не делал крупный сборщик в течение нескольких дней.
Моя проблема в том, что когда основной gc запускается, он останавливается и выдает предупреждение проверки работоспособности.мы попытались уменьшить размер кучи, и проблема исчезла, потому что майор случился чаще.Тем не менее, у него заканчивается память, когда приходит большая работа.Мы не хотим увеличивать тайм-аут проверки работоспособности, чтобы мы хотели настроить gc так, чтобы основной gc происходил чаще, даже с большим размером кучи, вместо ожидания, когда это необходимо.Я планирую перейти на использование -XX:+UseConcMarkSweepGC
, чтобы сделать паузу меньшим воздействием.Любые другие варианты JVM я должен попробовать тоже?