Вчера появилась новость о разработке внутри Oracle нового сборщика мусора Z Garbage Collector (ZGC).
ZGC нацелен на маленькие паузы (< 10мс) и большие кучи (> 1TB), при этом понижение производительности не должно превышать 15%. Как утверждает лидер проекта Per Liden, реализация уже достаточна зрелая и стабильная.
Сейчас происходит процедура голосования за утверждение ZGC как проекта OpenJDK, после которой исходники нового сборщика мусора станут доступны сообществу.
Тем временем, сообщество восприняло новость неоднозначно. Сборщик мусора с ультрамаленькими паузами, безусловно, нужен, но многие выразили недоумение, так как разработка подобного сборщика мусора уже ведётся в другом проекте Shenandoah (JEP 189). В частности, Volker Simonis из SAP выразил своё беспокойство по поводу дублирования усилий разными командами (RedHat инвестировал в Shenandoah большие ресурсы), а так же факта, что процедуру голосования начали без предварительной публичной дискуссии. Кроме того, наличие двух сборщиков мусоров, делающих примерно то же самое, немного сбивает с толку. Какой из них лучше? Какой в итоге останется в OpenJDK или останутся оба?
С другой стороны, некоторым не терпится как можно быстрее посмотреть код ZGC и пощупать сборщик мусора в действии.