Replies: 1 comment
-
JVM 심층 분석을 통한 스프링 프로젝트 병목 구간 파악: Controller 파라미터 매핑 어노테이션의 작동 원리와 최적 사용 전략 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
주제 선정 이유
프로젝트에 새로운 기능이 추가될수록 서버 부팅 시간이 점점 느려지는 현상을 발견하여, JVM 분석을 통해 프로젝트의 어느 지점에서 실행 속도를 저하시키는지 확인하고 이를 개선하고자 합니다.
08/29 딥다이브
방향성 정리
JVM 공부
자료 모음
9/12 딥다이브
JVM 정리
JVM이란?
자바 바이트코드(Bytecode)란?
javac
에 의해 변환되는 코드의 명령어 크기가 1바이트라서 바이트코드이며, 확장자는.class
를 쓴다.Java 컴파일 과정
.java
파일을 빌드하면javac
가 바이트코드.class
로 변환JVM의 구성요소
.class
을 메모리에 로드하고, 런타임 데이터 영역의 메서드 영역에 로드된 클래스의 메타데이터를 저장한다.static
변수의 메모리를 할당하고 자바의 기본값을 초기화한 뒤, 심볼릭 레퍼런스를 실제 메모리 주소로 변환한다.Just In Time
컴파일러: 자주 실행되는 바이트코드를 기계어로 변환한 후 캐싱하여 반복되는 코드를 빠르게 실행한다.심볼릭 레퍼런스
를 저장하는 영역이다.new
키워드로 생성한 인스턴스와 배열이 생성되며, 모든 스레드가 공유하는 영역이다. GC가 관리하는 영역이기도 하다.Native Code
를 실행할 때 사용되는 영역으로, JNI(Java Native Interface)를 통해 호출되는 메서드와 관련된 메모리를 관리한다.Beta Was this translation helpful? Give feedback.
All reactions