티스토리 뷰
연말에 회사에서 공공도서를 신청하라고 해서 EXEM에서 출간한 "JVM Performance Optimizing 및 성능분석사례" 구매해줘서 요즘 remind해서 보고 있다. 차세대 APM(Application Performance Monitoring) Tool로 해당 회사에서 운영하는 솔루션이라 연관성이 있기도 했지만 개념 정리 및 사례별 정리가 잘 되어 있어 참고하려고 한다.
1. JVM((Java Virtual Machine) 정의: Java(프로그래밍 언어) + Virtual(물리적인 형태가 아닌 Software로서의 형태) + Machine(독자적으로 작동할 수 있는 매커니즘과 구조를 가지고 있음) = 자바 프로그램을 실행하는 가상의 머신
--> 별도로 설치할 필요없이 JDK를 설치하면 자동으로 설치된다.
2. 프로그램 수행과정
자바 코드가 생성되면 javac를 통해 컴파일(기계어로 전환)한다. 확장자 .java로 된 파일이 컴파일 과정을 거치면 .class로 변환된다. 이 변환된 .class를 실행하려면 JVM을 실행하는데 class파일을 Loader가 읽어들여 Runtime Data Area에 객체를 저장하고 Excution Engine을 통해 해석된다.
각각의 기능은 아래와 같다.
Method Area: 클래스, 변수, Method, Static 변수, 상수 정보 등이 저장되는 영역(모든 Thread가 공유)
Heap Area: new 명령어로 생성된 인스턴스와 객체가 저장되는 구역(GC는 이 영역에서 발생, 모든 Thread 공유)
Stack Area: Method 내에서 사용되는 값들(매개변수, 지역변수, 리턴 값 등)이 저장되는 구역
PC Regiser:CPU의 Register와 역할이 비슷함. JVM 명령의 주소 값 저장
Native Method Stack : 다른 언어 메소드 호출을 위해 할당되는 구역으로 언어에 맞게 Stack이 형성되는 구역
'IT의 유익 > WAS' 카테고리의 다른 글
오래 걸리는 JAVA Thread처리 방안(2/2)_jkillthread.jar (0) | 2021.05.12 |
---|---|
오래 걸리는 JAVA Thread처리 방안(1/2)_Thread 생명 주기 (0) | 2021.05.11 |
Red hat forum seoul 2019 참석 후기 (0) | 2019.10.18 |
JEUS7 같은 도메인내에서 Session Clustering 하기 (0) | 2019.08.20 |
JEUS6과 비교한 JEUS7 JeusAdmin 명령어 (0) | 2019.08.08 |
- Total
- Today
- Yesterday
- 칠곡 자전거 대회
- 오렌지가재
- 대구국제마라톤
- 애드센스
- 베스킨라빈스 포켓몬
- ChatGPT
- 가재 탈피
- i7-1260P
- 혁신도시 국수
- 반려곤충
- 경산 국수
- 일취월장
- OKOK앱
- 서브 40
- 도로이
- 가재
- GCP #GCP GIFT#
- 여름 자전거 대회
- 갖고싶다 고양이
- 애디그램
- 제주 마음 샌드
- 타임캐시
- 고양이
- decode
- 다이어트
- chatgpt 정의
- 대구 야간 라이딩
- 캐시워크
- 대구 고양이 카페
- 장수풍뎅이
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |