Thread Dump, Heap Dump 생성 및 분석 방법 1. 명령어를 통해 프로세스의 thread 단위로 CPU 사용율을 모니터링하여 CPU를 많이 차지하는 thread 확인prstat -L -m -p [프로세스ID] [Interval] 가장 높은 cpu를 차지하는 thread의 lwpid를 16진수로 변환 (= thread Dump의 nid) ex) lwpid: 148 == nid: 0X94 또는 아래 명령어 사용 가능ps -mo pid,lwp,stime,time,cpu -C java 가장 높은 cpu를 차지하는 thread의 TID를 16진수로 변환 (= thread Dump의 native ID) 그럼 해당 thread가 어떠한 작업을 수행중이며 왜 CPU를 많이 차지하는지 분석 가능! 2-1...
넷플릭스의 Linux performance analysis in 60,000ms에 대해서 부분적으로 번역한 글입니다. 리눅스 서버에 성능 이슈로 인해서 로그인했을 때 우리가 가장 먼저 체크해봐야할 사항은 어떤것들일까? 넷플릭스는 많은 사람들이 알고 있는것 처럼 아마존 EC2 리눅스 서버를 사용하고 있다. 이런 대규모 서버를 모니터링하고 성능을 체크하는데에는 툴을 사용하는데 클라우드 전체의 모니터링에는 Atlas, 하나의 EC2 instance의 성능체크에는 Vector를 사용한다. 이 툴을 이용하면 대부분의 이슈는 해결 가능하지만, 가끔씩은 EC2 instance에 로그인해서 리눅스의 표준적인 성능 체크 툴을 사용할때가 있다. 첫 60초 이 글에서는 1분 안에 표준적인 리눅스 환경에서 CLI를 이용해 어..
1-1. 스레드의 종류 Daemon Thread 작업을 돕는 보조적인 역할을 수행하는 쓰레드 (GC 도 여기에 해당) 프로세스 종료시 데몬 쓰레드는 강제적으로 자동종료 언제든지 종료가 되어도 상관없는 작업 시에 사용 (그래서 주로 데몬쓰레드를 쓴다) Thread t = new Thread(); t.setDaemon(true); 로 설정가능 Non-Daemon Thread 실제 주 작업을 하는 스레드 프로세스 종료시 논데몬 쓰레드가 살아있는 경우 종료 불가능 (가끔 톰캣을 종료했지만 안꺼져서 kill 해야되는 이유) 매우 중요한 데이터 처리시에 사용하는 것이 일반적 1-2. 스레드덤프를 추출해보면 좋은 상황 모든 시스템에 응답이 없을 때 사용자 수가 많지 않은데 CPU사용량이 높을때 특정어플리케이션 수행 ..
리눅스 jstack thread_dump 보기시 에러Unable to open socket file: target process not responding or HotSpot VM not loaded The -F option can be used when the target process is not responding 라는 에러 발생 시 대처방안 -> su - -c "jstat -l " 권한문제로 접근하지 못해서 발생한 에러인거 같다
AWS Command Line Interface 설치 AWS CLI 설치 방법 pip 가상 환경 사용 번들 설치 관리자 사용 요구 사항 Python 2 버전 2.6.5+ 또는 Python 3 버전 3.3+ Windows, Linux, macOS, or Unix 참고 Python 구 버전은 일부 AWS 제품을 지원하지 않을 수 있습니다. &CLI;를 설치하거나 사용할 때 InsecurePlatformWarning 또는 운영 중단 공지가 표시되는 경우, 최신 버전으로 업데이트하십시오. pip를 사용하여 AWS CLI 설치 Linux, Windows및 macOS에서 AWS CLI를 배포하는 기본 방법은 pip입니다. 이는 Python 패키지 및 해당 종속 항목을 쉽게 설치, 업그레이드 및 제거하는 방법을 제공..
패키지가 설치 된 위치 찾기 in Ubuntu Feb 20, 2016 | 0 Comments | Ubuntu | Linux Package Install Directory Search | ☛ Windows 에서는 대부분 Program files 디렉토리에 설치가 되는 편인데 Ubuntu 는 좀 이곳저곳에 설치되는 느낌이 강합니다. 어떤 방법으로 설치하느냐에 따라서도 좀 달라지고 게다가 어떤 계정으로 설치하느냐에 따라 달라지는 것 같기도 하고요. 패키지가 설치 된 디렉토리 찾는법을 알아보겠습니다. apt-get install 로 설치된 경우 dpkg -L apt-get install 로 설치한 패키지는 검색이 됩니다. dpkg -L openjdk-8-jre gem 으로 설치된 경우 gem environmen..
- Total
- Today
- Yesterday
- 여러서버 컨트롤
- 코로나19
- ubuntu
- directory copy 후 startup 에러
- 오라클 홈디렉토리 copy 후 startup 에러
- 트리이스
- Oracle
- (InstantClient) 설치하기(HP-UX)
- [오라클 튜닝] instance 튜닝2
- 우분투
- 5.4.0.1072
- 오라클 인스턴트클라이언트(InstantClient) 설치하기(HP-UX)
- pod 상태
- [오라클 튜닝] sql 튜닝
- 오라클 트러블 슈팅(성능 고도화 원리와 해법!)
- 설치하기(HP-UX)
- CVE 취약점 점검
- 테라폼
- 스토리지 클레스
- 튜닝
- 쿠버네티스
- K8s
- 커널
- 오라클
- 버쳐박스
- 키알리
- 앤시블
- MSA
- startup 에러
- ORACLE 트러블 슈팅(성능 고도화 원리와 해법!)
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |