GC

    JVM 에서 지연시간 최적화 하기

    가비지 컬렉터는 주기적으로 JVM의 heap 메모리를 점검하여 스택에서 참조되지 않는 객체를 메모리에서 해제하는 장치이다.JVM (자바 가상 머신) 에는 여러가지 가비지 컬렉터가 존재한다.그 여러가지 컬렉터들 중에서 최근 많이 사용되는 가비지컬렉터(GC) 는 무엇이고 어떤 지표를 가지고 가비지컬렉터(GC) 를 선택해야할 지 알아보자.이 글에서는 가비지 컬렉터가 어떤 것인지 자세히 설명하기보다는 저지연 컬렉터의 특징과 동작원리에 대해서 설명하고 있기 때문에 가비지 컬렉터가 어떤 것인지 최소한의 개념은 가진 상태로 읽는 것을 추천한다. 가비지 컬렉터를 측정하는 지표들에는 무엇이 있을까?1. 처리량처리량은 애플리케이션이 실제 작업(유용한 계산)을 수행하는 시간의 비율을 의미한다. 처리량 같은 경우 CPU 스펙..

    매개변수를 통해 JVM 메모리 할당과 회수 전략에 대해서 알아보자!

    1. 대상- JVM (자바가상머신) 에서는 어떻게 메모리를 할당하고 회수하는지 직접 눈으로 확인하고 싶은 사람- 가상머신 매개변수를 사용해서 테스트 해보고 싶은 사람- 기본적인 GC 관련된 키워드는 알고있는 사람 (ex. Old Generation, ….)- 미래의 나 2. 개요 최근 회사에서 싱글코어로 배포되어 있던 서버의 코어수를 증량하면서 SerialGC -> G1GC 를 사용하게 되었다. 그에 따라 메모리 회수가 잘 이루어지는지 모니터링을 하고 있는데 각자의 공간에 메모리가 어떻게 할당되고 회수를 하는지 직접 확인하고 싶어졌다.  마침 최근 읽고 있는 JVM 밑바닥 까지 파헤치기 라는 책에서 다루고 있어 정리하고 복기할겸 글로 남기는 것이 의미있을 것 같았다. 따라서 이번 글에서는 가장 기본적인 ..