자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기
- 평점평점점평가없음
- 저자이상민
- 출판사한빛미디어
- 출판일2011-06-01
보유 1, 대출 0, 예약 0, 누적대출 0, 누적예약 0
책소개
시스템에서 발생하는 문제의 원인을 진단하는 자바 트러블 슈팅 가이드 자바 시스템에서 문제가 발생했을 때 어떻게 원인을 찾는지, 진단하는 방법을 알려준다. 자바 시스템에서의 성능 관리보다는 문제를 진단하는데 초점을 맞추었으며 문제 진단에 사용하는 무료 툴과 사용법을 소개한다. 시스템 장애가 일어났을 때 문제 상황과 원인을 진단할 수 있는 리눅스 명령어를 다룬다.
저자소개
1997년 삼성 SDS에 입사하였으며 2009년부터는 NHN에서 장애 진단 지원, 성능 측정, 성능 튜닝 등의 업무를 수행하고 있다. 그리고, 사내에서 각종 자바 및 성능 관련 과정을 기획 및 강의하고 있다. 자바 관련 자격증인 SCEA, SCBCD, SCWCD, SCJP를 보유하고 있으며 『Blog2Book 자바 성능을 결정짓는 코딩 습관과 튜닝 이야기』(2008, 한빛미디어), 『Blog2Book 자바 개발자도 쉽고 즐겁게 배우는 테스팅 이야기』(2009, 한빛미디어)를 집필했다.
목차
Story 01 자바 기반 시스템에서 발생할 수 있는 문제점들 나불안씨 소개 어떤 문제들이 발생하나 장애 상황을 종합해서 다시 보자 발생 가능한 병목 지점들 정리하며 Story 02 쓰레드에서 발생하는 문제점들에는… WAS에서 적절한 쓰레드 개수는? 쓰레드로 인한 대표적인 문제들 락을 피할 수 있는 10가지 방법 끝나지 않는 루프 쓰레드 개수에 대한 권장안 정리하며 Story 03 쓰레드 단면 잘라 놓기 쓰레드 단면은 왜 만들까? 쓰레드 단면 해부하기 효과적인 쓰레드 단면 생성 방법 쓰레드 단면 파일로 남기기 정리하며 Story 04 잘라 놓은 쓰레드 단면 분석하기 TDA를 아시나요? TDA 사용하기-쓰레드 목록 확인 TDA 사용하기-잠겨있는 쓰레드 확인 TDA 사용하기-무한 루프나 응답 없는 화면 확인 실시간 쓰레드 분석을 위한 ThreadChecker 정리하며 Story 05 쓰레드 문제 Case study 쓰레드 단면으로 확인할 수 있는 문제들 쓰레드 때문에 시스템이 느려질까? 응답이 없으면 쓰레드 단면부터 봐야 예외가 계속 생겨도 쓰레드 분석이 해결책? 사례 하나-CPU 사용량이 갑자기 올라갔어요 사례 둘-쓰레드 풀이 계속 늘어나고 있어요 사례 셋-시스템에 응답이 없어요 정리하며 Story 06 메모리 때문에 이런 문제들이 발생할 수 있다 자바 애플리케이션과 메모리 영역 OutofMemoryError는 언제 일어날까? OutofMemoryError에 담긴 장애의 의미 메모리 릭의 3가지 유형 OutofMemoryError가 오류의 전부인가? 정리하며 Story 07 메모리 단면 잘라 놓기 메모리 단면은 언제 자르나? hprof로 메모리 단면 생성하기 jmap으로 메모리 단면 생성하기 jmap의 dump 옵션 사용하기 힙 덤프를 자동으로 만들어보자 정리하며 Story 08 잘라 놓은 메모리 단면 분석하기 유용한 메모리 단면 분석 툴 MAT를 직접 사용해보자 정리하며 Story 09 메모리 문제 Case study 메모리 단면으로 확인할 수 있는 문제들 사례 하나-성능 테스트 중 시스템이 이상해졌어요 사례 둘-시스템에 응답이 없어요 정리하며 Story 10 모니터링 툴의 사용-Java VisualVM Java VisualVM을 아시나요? Java VisualVM을 해부해보자 JMX로 Java VisualVM 연결하기 Java VisualVM, 어떻게 활용하나? 정리하며 Story 11 실시간 JVM 모니터링이 가능한 BTrace BTrace란? BTrace 설치하기 BTrace API 클래스 어노테이션은 필수 유용한 메소드 어노테이션들 BTrace 활용, 주요 클래스부터 챙기자 BTrace를 바로 실행하고 싶다면? 예외가 계속 일어나는 원인을 추적해보자 정리하며 Story 12 CPU 모니터링하기 CPU 사용량을 모니터링하는 툴들 보다 정교한 모니터링이 필요하다면 기본적인 mpstat 사용법 mpstat가 제공하는 옵션들 CPU 모니터링의 정석 정리하며 Story 13 전반적인 상황 모니터링하기-vmstat와 sar 팔방미인 모니터링 툴 vmstat 기본적인 vmstat 사용법 vmstat가 제공하는 옵션들 vmstat 옵션 활용 사례 상세한 정보를 보여주는 sar 기본적인 sar 사용법 sar가 제공하는 옵션들 정리하며 Story 14 프로세스 상황 모니터링하기 프로세스 모니터링 툴 소개 프로세스간 관계 알아보기 누구나 알고 있는 ps 명령어 프로세스별 CPU 사용량 모니터링하기 프로세스 메모리 구성을 확인하는 pmap 정리하며 Story 15 I/O 상황 모니터링하기 I/O 모니터링 툴 소개 디스크 사용량을 알아보자 iostat 사용하기 프로세스가 어떤 파일을 쓰는지 확인하려면 정리하며 Story 16 네트워크 상황 모니터링하기 네트워크 모니터링 툴 소개 네트워크 사용 환경 만들기 sar로 네트워크 사용량 확인하기 lsof로 연결된 네트워크 정보 확인하기 netstat으로 네트워크 살펴보기 정리하며 Story 17 실시간으로 시스템 모니터링하기 쉽고 강력한 top 명령어 top를 위한 단축 키들 top이 제공하는 시작 옵션들 top보다 간편한 htop 정리하며 Story 18 리소스 모니터링은 이거 하나면 된다 통합 모니터링 툴 소개 collectl 설치하기 collectl 사용하기 collectl로 수집한 데이터 전송 방법 collectd 설치하기 collectd에 적응하기 collectd로 여러 서버 정보 취합하기 정리하며 Story 19 장애 진단은 이렇게 한다 장애가 나면 이것부터 챙기자 본격적인 진단 시작하기 장애 원인 제거하고 결과 정리하기 정리하며 Story 20 문제점에 따른 진단은 이렇게 한다 시스템이 느리면 이렇게 응답이 없을 때는 이렇게 정리하며
한줄 서평