프로파일링을 위한 JFR
외부 도구 없이 내장 Flight Recorder로 모든 Java 앱을 프로파일링합니다.
코드 비교
✕ Java 8
// Install VisualVM / YourKit / JProfiler // Attach to running process // Configure sampling // Export and analyze // External tool required
✓ Java 9+
// Start with profiling enabled
$ java -XX:StartFlightRecording=
filename=rec.jfr MyApp
// Or attach to running app:
$ jcmd <pid> JFR.start
이 코드에 문제가 있나요? 알려주세요.
모던 방식이 더 나은 이유
내장됨
설치하거나 라이센스를 구입할 외부 프로파일러가 없습니다.
낮은 오버헤드
약 1% 성능 영향 — 프로덕션에서 안전합니다.
풍부한 이벤트
CPU, 메모리, GC, 스레드, I/O, 잠금, 커스텀 이벤트.
이전 방식
외부 프로파일러
모던 방식
Java Flight Recorder
JDK 버전
9
난이도
중급
JDK 지원
프로파일링을 위한 JFR
사용 가능
JDK 9/11 이후 널리 사용 가능 (11에서 오픈소스화)
동작 원리
Java Flight Recorder(JFR)는 모든 JDK에 내장된 저오버헤드 프로파일링 도구입니다. CPU, 메모리, GC, 스레드, I/O, 잠금, 커스텀 이벤트를 기록합니다.
관련 문서