Java 애플리케이션 성능을 향상시키기 위한 노력의 일환으로 Java 커뮤니티 내의 새로운 제안은 Z Garbage Collector (ZGC) 확장하여 젊은 개체와 이전 개체에 대해 별도의 세대를 유지할 수 있도록 합니다. Java 개발자에 따르면 젊은 개체는 일찍 죽을 확률이 높기 때문에 ZGC 이를 통해 젊은 개체를 더 자주 수집할 수 있습니다.
세대별 ZGC 에 대한 OpenJDK Java Enhancement Proposal (JEP) 의 주요 목표는 할당 지연 위험, 힙 메모리 오버헤드 및 GC(가비지 컬렉션) CPU 오버헤드를 줄이는 것입니다. 제안 지지자들은 비세대 ZGC 와 비교할 때 처리량을 크게 감소시키지 않고 이러한 이점을 얻을 수 있다고 믿습니다.
확장성과 낮은 대기 시간을 위해 설계된 Z Garbage Collector 2020년 9월 Java Development Kit (JDK) 15 이후 프로덕션 릴리스에서 사용할 수 있습니다. ZGC 일시 중지 시간은 일관되게 마이크로초 단위로 측정됩니다. 결과적으로 ZGC 많은 워크로드에 대한 가비지 수집과 관련된 대기 시간 문제를 효과적으로 해결할 수 있습니다.
ZGC 적절한 리소스를 사용할 수 있을 때 잘 수행됩니다. 그러나 ZGC는 나이에 관계없이 모든 객체를 함께 저장하므로 ZGC 작동할 때마다 모든 객체를 수집해야 합니다. 약한 세대 가설은 젊은 개체는 일찍 죽는 경향이 있는 반면 오래된 개체는 지속될 가능성이 있다고 주장합니다. 결과적으로 젊은 개체를 수집하면 더 적은 리소스가 필요하고 더 많은 메모리를 해제하는 반면, 오래된 개체를 수집하면 더 많은 리소스를 사용하고 더 적은 메모리를 확보할 수 있습니다.
세대별 ZGC 제안은 아직 특정 표준 Java 버전에 지정되지 않았습니다. 현재 릴리스인 JDK 20 일주일 전에 소개되었으며 JDK 21 9월에 출시될 예정입니다. 표준 Java는 6개월 릴리스 주기로 작동합니다.
세대별 ZGC 제안이 논의됨에 따라 appmaster .io" target="_blank" rel="noopener" data-mce-href="https:// appmaster.io"> AppMaster 와 같은 no-code 플랫폼은 개발자가 백엔드를 구축하는 데 도움이 될 수 있습니다. , 웹 및 모바일 애플리케이션을 빠르고 효율적으로. AppMaster 애플리케이션은 뛰어난 확장성과 낮은 대기 시간을 입증할 수 있으므로 엔터프라이즈 애플리케이션 및 고부하 시나리오에 적합합니다. AppMaster의 기능을 자세히 알아보려면 appmaster .io" data-mce-href="https: appmaster.io">무료 계정을 만들고 강력한 no-code 도구를 활용하세요.