да, но там parnew на еден обычно ставят были случаи когда у меня спрашивали “у нас ведь cms, почему сборка молодого останавливает работу” (это было когда под молодое выделили 50%+ от хипа)
жалко, что он не поддерживает эргономики. было бы удобно-написал что хочешь и не паришься.
у g1 тоже есть такие паузы но там ещё stw в случае: 1) молодое поколение (так как на этой сборке есть много перемещений объектов) 2) FullGC, до недавнего времени был в 1 поток, поэтому если уж дошло до него, то проще перезапустить jvm, пофикшено в 10ке https://openjdk.java.net/jeps/307 3) насколько помню даже при сборке old, evacuation проходит с остановкой
Given that the STW time is driven by the concurrency of the http application and that GC events are 30s apart, what would happen if we grew or shrunk the size of Eden? With the STW time fixed against the concurrency, doubling the size of Eden will result in GC events happening every 60s instead of every 30s, cutting the frequency of total GC events and probably overall time spent in GC in half. The opposite would happen by shrinking the size of Eden by 50%, GC events would come twice as frequently, and we'd be spending twice the amount of overall time in STW.
хотя конечно это не совсем правда, количество объектов на перемещение может оказаться таким же или даже меньше для обычного рест сервиса просто потому что запрос уже обработался и за ним можно подчистить освободившийся мусор