JVM Performance Optimizing 및 성능분석사례 (2) 썸네일형 리스트형 [JVM Performance Optimizing 및 성능분석 사례] Garbage Collection 단계 1) Garbage Collection 단계- IBM JVM에서 제공하는 각 Collector의 특징을 알아보기 전 Mark, Sweep, Compaction 단계에 대해 좀 더 구체적으로 알아보자. (1) Mark 단계- Mark 단계는 모든 Live Object들에 대한 Mark 작업을 하는 단계로서 참조계수(Reference Count)가 1 이상인 Object는 Mark 되며, 나머지는 Garbage로 간주된다. Mark된 Live Object는 Markbit vector에 주소가 저장된다. - Parallel Mark 기능을 사용할 수 있으며, 다수개의 Thread가 Mark 단계를 수행하기 위해 기동된다. 이렇게 Parallel Mark를 위해서는 -Xgcthreads 옵션을 사.. [JVM Performance Optimizing 및 성능분석 사례] Runtime Data Area와 Java Heap 1) Runtime Data Area 살펴보기 - JVM의 내부 구조 중 Runtime Data Area를 좀 더 자세히 살펴보자. (1) Method Area- 클래스, 변수, Method, static 변수, 상수 정보 등이 저장되는 영역이다.(모든 Thread가 공유한다) (2) Heap- new 명령어로 생성된 인스턴스와 객체가 저장되는 구역이다 (Garbage Collection 이슈는 이 영역에서 일어나며, 모든 Thread가 공유한다) (3) Stack Area- Method 내에서 사용되는 값들(매개변수, 지역변수, 리턴값 등)이 저장되는 구역으로 메소드가 호출될 때 LIFO로 하나씩 생성되고, 메소드 실행이 완료되면 LIFO로 하나씩 지워진다. (각 Thread 별로 하나씩 생성된다.. 이전 1 다음