IT/WEBWAS

메모리/CPU 과점 프로세스 찾아내기

동구멍폴로 2020. 7. 11. 22:41
반응형

(Linux 환경 / java 프로세스 기준)

 

1. top : 메모리나 CPU를 과점하는 프로세스 및 PID 확인 (여기서는 28322를 예시로 함.)

2. top -H -p 28322 : 해당 PID로 실행중인 프로세스 전체 확인 (-> 여기서 자식프로세스로 28337 확인을 예시)

3. jstack -F 28322 > thdump_28322.txt  : 3초 간격으로 실행, 쓰레드 덤프를 발생시킨다

 /  jstack -F 28322 > thdump_28322_1.txt 

 /  jstack -F 28322 > thdump_28322_2.txt 

 

4. view thdump_28322.txt : 쓰레드 덤프를 확인한다. STUCK, RUNNING 인 처리건을 주로 확인한다.

  이때, 실제 PID에 매핑되는 쓰레드를 확인할때, 10진수의 PID(28337)를 16진수(6EB1) 변환해 찾으면 나온다.

  IN_NATIVE, UnSafe.Park 등은 모두 무시해도 좋다.(알아도 해결 못하거나, 기초적인 프로세스임)

 

반응형