и по их выбору?
Ладно, буду похоже читать все подряд. Начну с хабра)
G1 нормально из коробки работает, не мешай ему.
Достаточно посмотреть официальную документацию оракла по GC и посмотреть все их реализации
начиная с java 12 (т.е. с этим https://openjdk.java.net/jeps/346) а вообще Shenandoah или ZGC -- вот современные гибко настраиваемые gc, которые можно смело рекомендовать
У него-ж 14 JDK, ZGC там еще в экспериментальной версии
Так и есть. Настраивайте, пробуйте, сравнивайте с ParallelGC / G1, а потом приходите на JPoint/Joker рассказывать так ли хороши GC :)
я в этот чат начал заглядывать недавно, все никак не могу привыкнуть к тому, какая крутая публика тут) так может, Владимир, поделитесь своим мнением? хотя бы например касаемо общего случая.
Проблема общего случая, что он у всех разный, а публике интересно слушать про то, какие загогулины случаются у других, и как эти недуги решают. Да, ZGC и Shenandoah снижают паузы, но запросто может оказаться, что длительность бизнес-операций будет дольше. Как ни крути, а в Z и Sh более сложные барьеры на запись/чтение/CAS. Если важно, чтобы система "не залипала на секунду-другую", то Z/Sh норм. Золотое правило тюнинга GC -- посмотреть на объём живых и нужных данных (напр. heap occupation after full GC) и поставить Xmx раза в 2-3 больше (кто-то умножает на e, кто-то на пи, кто-то на g) Если же важнее быстрее обработать большой объем -- Parallel наше всё. Если working set огромный (64G+ нужных в памяти данных), то паузы на Parallel могут не устроить (ну, пауза в 10-20сек может сбить healthcheck с толку :) ) Ну и эталонный случай от Леши Ш -- на Raspberry Shenandoah вполне имеет смысл даже на 512мб, т.к. процессор там нешустрый и паузы у Parallel получаются конскими даже на мелких кучах.
спасибо) и отдельное спасибо за золотое правило)
Хип 35 Гб Гц паузы по 700мс
Вот я о том же. Как то ещё не доходило дело до тонких настроек, а сейчас придётся. Думаю как минимум потоков добавить, там вроде один поток для сборки по умолчанию, а на машине 64 ядра)
Вот, у нас дефолт, g1. И да, хелсчек сбоит и метрики не снимаются в эти Гц паузы) Спасибо, буду думать)
Обсуждают сегодня