메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

Blog2Book, 자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기

한빛미디어

집필서

절판

  • 저자 : 이상민
  • 출간 : 2011-06-03
  • 페이지 : 416 쪽
  • ISBN : 9788979148305
  • 물류코드 :1830
  • 초급 초중급 중급 중고급 고급
4점 (2명)
좋아요 : 21

시스템에서 발생하는 문제의 원인을 진단하는
자바 트러블 슈팅 가이드

IT서비스가 기획되고 개발 및 운영으로 이어지기까지 여러 사람의 손을 거친다.
그러나 이렇게 많은 이들의 공이 들어간 IT서비스도
사소한 장애 하나 때문에 먹통이 되는 일이 빈번하게 일어난다.
서버도 애플리케이션도 모두 불완전한 사람의 손을 거쳐 만들어진다.
그런 만큼 그 어떤 시스템도 완벽하지 않다.
물론 사전 성능 테스트와 꾸준한 모니터링으로 중무장한다면
많은 이들이 흘린 땀의 흔적이 장애 때문에 허무하게 사라지지는 않을 것이다.
그러나 철저한 준비는 장애를 막기 위한 필요 조건일 뿐이다.
실제로 나름 준비 태세를 갖추고 시스템을 오픈했음에도 예상치 못한 장애로 인해
IT담당자들이 발을 동동 구르는 안타까운 장면이 심심치 않게 연출된다.
장애를 다루는 일을 성능 테스트나 튜닝의 양념 정도로 생각해서는 안 되는 이유다.
그렇다고 너무 낙심할 필요는 없다.
장애를 진단하는 방법만 알면 장애가 나는 것은 어쩔 수 없더라도
파장과 재발 가능성은 크게 줄일 수 있기 때문이다.

이제 시스템 장애가 발생했을 때 겁먹지 말자.
문제의 원인을 진단하는 방법이 이 책에 있다.

이상민 저자

이상민

1997년 삼성 SDS에 입사하여 현재 TA팀에서 연간 약 40개 프로젝트의 자바 성능 튜닝 및 성능 테스트 업무를 수행하고 있다. 자바 관련 자격증인 SCEA, SCBCD, SCWCD, SCJP를 보유하고 있으며, 사내 자바 커뮤니티의 마스터로 활동 중이다. 멀티캠퍼스 자바 관련 교재를 다수 집필하였고, 사내 강사 및 온라인 과정 튜터로도 활동하고 있다. 번역서로는 「Java Language Specification」(에이콘, 2007)이 있다

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 문제점에 따른 진단은 이렇게 한다
시스템이 느리면 이렇게
응답이 없을 때는 이렇게
정리하며
 
부록 A 그 외에 유용한 명령어들
부록 B 쓰레드 단면 추가 옵션 출력 결과 예
부록 C 자바 인스트럭션(instruction)
부록 D Fatal Error Log 분석
부록 E sar 옵션별 결과 예
부록 F VirtualBox에 우분투(Ubuntu) 설치하기
부록 G lsof 용어 설명
부록 H top 단축 키

한빛미디어의 블로그2블로그 시리즈는
문우식 저자님의 "패턴 그리고 객체지향적 코딩규칙"
이라는 책을 읽어 본 후
두번째 읽어보는 책이다.
가지고 있기로는 첫번째지만..

사실 자바개발자 라고 해도
이 책에서 얘기하는 트러블 슈팅 에 대한
내용을 접하기는 힘들것이다.

기본적으로 SI 프로젝트에선
그 해당 역할에 대한 영역이 정해져 있기에
개발자로 들어가서 시스템적인 내용을 접할 기회는
그리 많지는 않다.

그래도 이 책에서 다루는 내용은
알아두면 좋은 그리고 흥미로운 내용이다.

책의 구성은 참 독특했다.
이 책에서는 세명의 가상의 인물을 등장시킨다.
"우리아이 성장관리 시스템" 이라는 시스템을 관리하는 나불안
나불안의 사수 왕잘난, 숨은 고수 이추장

책에서는 시스템적으로 발생하는 있는 여러 문제점 들에 대해서
그 원인과 모니터링 하는 방법을 주제별로 나누어
그에 맞춰 대화형식으로 해당 상황을 보여주고
그 상황이 발생할 수 있는 원인들과
그걸 모니터링 하는 방법을 보여주고 있다.

대화형식 만큼 흥미를 끌고 효과적으로 내용을 전달하는 방법은 드물것이다.
일상적으로 사람은 대화라는거에 익숙해 있으니까
그런점에서 대화로 상황을 보여주고 그에 대한 설명을 다루는
구성은 참 좋았던거 같다.

아쉬웠던 점은
상황에 대한 모니터링 후 나불안의 그에 대해서 해결하는 과정도
보여주었다면 더 좋았을거 같다는 아쉬움이 있다.
주로 리눅스 계열 서버의 모니터링 에 대해서 보여주고 있는데
윈도우 계열도 같이 보여주었다면 하는 아쉬움이 있다.
로그의 내용중 너무 길지 않은 것은 텍스트 내용보다는
실제 모니터링 결과 화면을 보여주었다면 하는 아쉬움도 있다.

전체적으로 책은 녹색(?) 계열로 통일이 되어 있는데
로그 같은 부분을 보여줄때 박스안의 내용이 글꼴 형식이 조금 틀리거나
좀더 흐리게 처리한 부분이 있는데 그래서 읽을때
조금 눈에 피로가 생긴다는 점이 아쉬웠다.


조금 아쉬운 점이 있지만
책의 내용은 흥미롭고 재미있었다.

제목 : Blog2Book, 자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기
[이상민 지음 | 국내서 | 2011년 06월 | 한빛미디어(주)]

요약:
이 책은 WAS서버기반의 시스템을 개발/운영하는 사람들 대상으로 Java Thread/Core Dump를 분석하는 방법부터 다양한 도구로 진단하는 가이드까지, 저자의 경험을 통해 얻은 생생한 개발노하우를 소개하고 있다. 그리고, 서버를 대상으로 하고 있기 때문에 Unix/Linux에 친숙하지 않은 독자를 위해 진단에 필요한 각종 명령어들과 옵션들을 함께 안내하고 있는 실용서이다.

장단점:
사실 이러한 가이드는 대부분의 WAS 벤더들이 제공하고 있다. 하지만 실제 문제가 발생하거나 선배(사수)가 알려주기 전에는 개발/운영이 주 업무이기 때문에 관심을 가지기 힘든 것이 현실이다. 이 책은 딱딱한 형식을 벗어나 선배(이추장)가 후배(나불안)에게 상황 별로 어떻게 진단하고 해결하는지를 풀어나가는 구성으로 다소 지루할 수 있는 내용을 편하게 읽을 수 있다는 것이 큰 장점이다. 다만, 너무 많은 도구들을 다룸으로써 구성이 산만한 감이 있고, 다른 책(자바 성능을 결정 짓는 코딩 습관과 튜닝이야기)과 너무 밀접하게 연관되어 있어 주 독자층(난이도)이 불분명해 보이는게 단점으로 보인다. 이책을 보려는 초중급 개발자는 "자바 성능을 결정 짓는 코딩 습관과 튜닝이야기"를 같이 보기를 권하고 싶다.

기타:
개인적으로는 이렇게 편하게 읽을 수 있는 도서(특히 최신기술/트랜드에 대한..)가 더 많이 나왔으면 하는 바램이다.

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

무료배송 상품을 포함하여 주문하신 경우에는 구매금액에 관계없이 무료로 배송해 드립니다.

닫기

리뷰쓰기

닫기
* 도서명 :
Blog2Book, 자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
Blog2Book, 자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
Blog2Book, 자바 개발자와 시스템 운영자를 위한 트러블 슈팅 이야기
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실