일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- chatGPT's answer
- Java
- GPT-4's answer
- spring data jpa
- 파이썬
- flet
- 자바암호
- 웹 크롤링
- jpa
- kotlin
- 리눅스
- 인프라
- 고전역학
- JVM
- android
- write by GPT-4
- python
- 자바네트워크
- oracle
- 시스템
- 자바
- 역학
- NIO
- write by chatGPT
- 소프트웨어공학
- 유닉스
- spring integration
- 데이터베이스
- Database
- 코틀린
- Today
- Total
기억을 지배하는 기록
VM 분석 : Chapter 2 VM의 구조와 튜닝 - 2 본문
PLT 2.3 GC 로그 수집과 분석
HP Unix 경우에는-Xverbosegc 옵션이 있지만 여기서는 자바 표준 옵션인 –verbosegc 을 이용한 로그 수집과 분석에 관하여 알아보겠다. 다음은 –verbosegc 옵션을 주었을 때 생성되는 Minor GC, Full GC 로그이다. 하지만 GC로그는 다른 어플리케이션의 Stdout내용과 같이 출력되기 때문에 분석을 위해서 정제를 해야 한다.
[GC 2936K->2764K(4112K), 0.0066740 secs] [GC 3270K->2904K(4112K), 0.0034900 secs] [GC 3416K->2964K(4112K), 0.0030190 secs] [GC 3476K->3345K(4112K), 0.0042970 secs] [GC 3856K->3553K(4112K), 0.0047260 secs] [GC 4065K->3818K(4368K), 0.0053370 secs] [Full GC 3818K->2769K(4368K), 0.0752500 secs] [GC 3281K->2811K(5196K), 0.0039310 secs] |
- [GC : Minor GC를 나타낸다.
- [Full GC : Full GC를 나타낸다.
- 2936K->2764K(4112K), 0.0066740 secs : “2936k”는 GC전의 Heap 사이즈를 말하고, “2764k”는 GC 이후의 Heap사이즈를 말하며, “(4112k)”는 총 Heap 사이즈를 “0.0066740”은 GC 수행 시간을 말한다.
! GC 이후의 사이즈는 총 Heap 사이즈에서 Eden+Suvivor 1개의 영역이 Clear 된 상태이기 때문에 Old영역과 비슷한 크기를 나타낸다. ! 총 Heap 사이즈는 JVM의 현재 사용 Heap 메모리량이다. –Xms, -Xmx 옵션으로 조정할 수 있다. |
로그파일 분석
1. 로그파일 정제
GC.
awk Script
BEGIN { |
2. 분석스크립트 실행
“awk -f GC.awk jeus42/logs/JeusServer/JeusServer_12012004_0.log > GC.log”
Minor Major Alive Freed |
3. 생성된 로그파일을 엑셀로 불러와서 그래프를 그린다.
Sample graph of minor/major collections
Sample graph of GC behavior
'오래된글 > Articles' 카테고리의 다른 글
JAVA 5.0 가비지 콜렉터 추가 옵션 (0) | 2018.04.19 |
---|---|
VM 분석 : Chapter 2 VM의 구조와 튜닝 - 3 (0) | 2018.04.19 |
VM 분석 : Chapter 2 VM의 구조와 튜닝 -1 (0) | 2018.04.19 |
VM 분석 : Chapter 1 Performance - 2 / HAT (0) | 2018.04.19 |
VM 분석 : Chapter 1 Performance - 2 / -Xrunprof 옵션 (0) | 2018.04.19 |