JDK Flight Recorder 및 Mission Control을 통해 Java 워크로드 모니터링 및 관리
- 아티클
- 2023. 04. 04.
이 문서의 내용
이 문서에서는 JDK Flight Recorder 및 JDK Mission Control을 통해 Java 워크로드를 모니터링하고 관리하는 방법을 보여줍니다.
2018년의 Oracle 오픈 소스형 Mission Control로, OpenJDK 산하의 프로젝트로 관리됩니다. Flight Recorder와 결합할 경우 Mission Control은 오버헤드가 낮고 대화형으로 모니터링하는 Java 워크로드 관리 기능을 제공합니다.
JDK Mission Control을 설치하고 JVM에 연결
아래 단계에 따라 JDK Mission Control을 설치하고, JVM(Java Virtual Machine)에 연결하고, 실행 중인 애플리케이션의 모든 특성을 실시간으로 파악합니다.
- JDK가 설치되어 있는지 확인합니다.
- GitHub의 OpenJDK JMC 프로젝트에서 JDK Mission Control 이진 파일을 찾습니다. 그런 다음, 시스템에 맞는 버전을 선택하고, 로컬로 저장하고, 해당 디렉터리로 변경합니다.
- 다운로드한 파일을 확장합니다. 아래 예제는 Azul Zulu Mission Control에 대한 것입니다.
Bash
- Linux:
tar -xzvf zmc8.0.0.17-ca-linux_x64.tar.gz
Windows:
PowerShell
unzip -zxvf zmc8.0.0.17-ca-win_x64.zip
macOS:
Bash
-
tar -xzvf zmc8.0.0.17-ca-macos_x64.tar.gz
- 호환되는 JDK 중 하나를 사용하여 Java 애플리케이션을 시작합니다. 예를 들면 다음과 같습니다.
- Azure CLI
-
$JAVA_HOME/bin/java -jar MyApplication.jar
- Zulu Mission Control 시작
Azure CLI
- Linux:
zmc8.0.0.17-ca-linux_x64/zmc
Windows:
Azure CLI
zmc8.0.0.17-ca-win_x64\zmc.exe
macOS:
Azure CLI
-
zmc8.0.0.17-ca-macos_x64/Zulu\ Mission\ Control.app/Contents/MacOS/zmc
- 애플리케이션을 실행 중인 JVM을 찾습니다.
- Zulu Mission Control 창의 왼쪽 위 창에서 JVM Browser라는 탭을 선택합니다.
- 애플리케이션을 실행 중인 JVM 인스턴스에 대해 왼쪽 위의 목록 항목을 선택하고 확장합니다.
- 필요한 경우 비행 기록을 시작합니다.
- 비행 레코더에 "기록 없음"이 표시되면, 기록을 시작합니다. 기록을 시작하려면 JVM 브라우저 탭에서 비행 레코더 줄을 마우스 오른쪽 단추로 클릭한 다음, 비행 기록 시작을 선택합니다.
- 고정 기간 기록 또는 연속 기록 및 구성 프로파일링(세분화된) 또는 연속 구성(낮은 오버헤드)을 선택한 다음, 마침을 선택합니다.
- 비행 기록을 덤프합니다.
- JVM Browser의 Flight Recorder 줄 아래에 비행 기록이 나타나야 합니다. 비행 기록을 나타내는 줄을 마우스 오른쪽 단추로 클릭하고 전체 기록 덤프를 선택합니다.
- Zulu Mission Control 창 오른쪽의 큰 창에 새 탭이 나타납니다. 이 창은 애플리케이션을 실행 중인 JVM에서 방금 덤프한 비행 기록을 표시합니다.
- Zulu Mission Control을 사용하여 비행 기록 검토
- 아직 활성화되지 않은 경우 Zulu Mission Control 창의 왼쪽 창에서 개요라는 탭을 선택합니다. 이 탭은 비행 기록에 수집된 데이터의 다양한 보기를 포함합니다.
리소스
Azul Systems는 Azul Systems 기술 부책임자(Deputy CTO) Simon Ritter가 설명한 데모 비디오를 제공합니다. 이 동영상은 Flight Recorder 및 Zulu Mission Control의 구성 및 설정을 단계별로 보여줍니다. Flight Recorder 토론은 31분 30초 부분에서 시작합니다.
'[Microsoft]' 카테고리의 다른 글
Microsoft Build of OpenJDK에 대한 지원 로드맵 (2) | 2023.12.07 |
---|---|
Java 보안 및 암호화 (1) | 2023.12.07 |
Java 8에서 Java 11로 전환 (2) | 2023.12.07 |
Microsoft Build of OpenJDK 설치 (1) | 2023.12.07 |
Java 11 이상으로 이동하는 이유 (2) | 2023.12.07 |