도서상세
장바구니에 상품을 담았습니다.
바로가기
  1. 도서정가제
  2. 소득공제
품절
물량이 확보되는 대로 재입고하도록 하겠습니다.
14,000원
12,600원
10%
최대 적립 포인트
1,000 원
  • 구매 적립
    적립금 안내
    • 상품 적립금
    • 상품 적립금은 고객님이 웬디북에서 상품을 구매하실 경우 이에 대한 마일리지 개념으로 구매금액의 일부를 적립해 드리는 제도이며 사용은 예치금과 같이 현금처럼 사용가능하십니다.
    • 멤버십 적립금
    • 멤버십 적립금은 고객님의 멤버십(고객)등급에 따라 도서 구매액의 1 ~ 4%에 해당하는 적립금이 추가로 적립되며 적립금은 다음 주문시 현금처럼 사용이 가능합니다.
    • 다만 적립금은 예치금과는 달리, 현금으로 환불하실 수 없고 적립금의 적립일로 부터 12개월 이내에 사용하시지 않으면 자동으로 소멸됩니다.
  • 상품 적립금
    700원
  • 리뷰 적립
  • 최대 리뷰 적립금
    300원
12,600원
· 쿠폰 및 적립금은 결제 시 적용해 주세요
바로구매
장바구니 담기
품절
이 책을 구입하신 분들이 산 책
상세 이미지 더보기
상세 이미지
목차 더보기
목차
PART I 자바에서 발생 가능한 문제들
CHAPTER 1 자바 기반의 시스템에서 발생할 수 있는 문제들 3
어떤 문제가 발생할 수 있을까? 4
시스템이 느려요 4
시스템 응답이 없어요 6
예외가 계속 발생해요 7
시스템이 죽어요 8
장애 상황을 종합해서 다시 살펴보자 9
발생 가능한 병목 지점들 10
정리하며 12

PART II scouter 살펴보기
CHAPTER 2 scouter 개요 및 설치 15
APM 15
다이나트레이스(dynatrace) 16
앱다이나믹스(AppDynamics) 17
뉴 레릭(New Relic) 17
인스타나(instana) 17
와탭(whatap) 17
인터맥스(interMax) 18
핀포인트(pinpoint) 19
scouter 20
scouter 구성 및 방화벽 설정 21
scouter 데모 프로그램 설치하기 23
정리하며 27

CHAPTER 3 scouter 설정하기 - 서버 및 에이전트 28
scouter 다운로드하기 28
scouter 서버 설정하기 29
한 대의 서버에서 여러 개의 수집 서버 실행하기 33
scouter 호스트 에이전트 설정하기 35
scouter 자바 에이전트 설정하기 - 기초 36
자바의 ClassFileTransformer 38
scouter 자바 에이전트 설정하기 - 데몬 모니터링하기 39
정리하며 44

CHAPTER 4 scouter 클라이언트에서 제공하는 기능들 45
scouter 클라이언트의 종류 45
scouter 클라이언트 시작하기 46
Objects 창 살펴보기 46
수집 서버 추가/삭제하기 48
사용하지 않는 서버 제거하기 48
scouter의 메뉴 49
File 49
Management 50
Collector 51
Host 52
Object 53
Window 54
그래프 추가하기 55
필수 그래프 목록 57
Tomcat/Java 필수 그래프 목록 58
서버 필수 그래프 목록 58
그래프 확인법 59
화면 전환하기 60
서버 묶어서 보기 63
정리하며 67

CHAPTER 5 scouter XLog 68
XLog 사용법 - 기초 68
XLog 목록 71
XLog 사용법 - 프로파일링 75
메서드 프로파일링 추가하기 78
XLog 사용법 - 필터링 81
XLog 사용법 - 과거 데이터 불러오기 86
정리하며 88

CHAPTER 6 scouter 서버/에이전트 플러그인 89
서버 플러그인의 종류 89
빌트인 플러그인 90
스크립팅 플러그인 91
에이전트 플러그인의 종류 91
httpservice 플러그인 92
capture 플러그인 94
정리하며 97

CHAPTER 7 scouter 사용 시 유용한 팁 98
수집 서버의 디스크 사용량 안전하게 관리하기 98
알림 설정은 필수다 99
샘플링도 필수다 101
메서드 프로파일링도 필수다 103
정리하며 104

PART III 스레드 진단하기
CHAPTER 8 스레드 때문에(스레드에서) 발생하는 문제들 107
WAS의 적절한 스레드 개수는 몇 개일까? 107
스레드에서 발생하는 문제 중 가장 대표적인 것은? 108
레이스 컨디션 109
데드록 109
스타베이션 110
라이브 록 110
다른 형태의 예측 불가능한 오류 111
데드록 예제 111
록 경합을 피하는 10 + 1가지 방법 113
끝나지 않는 루프 116
스레드 개수 문제에 대한 권장안 116
정리하며 118

CHAPTER 9 스레드 단면 잘라 놓기 119
스레드 단면은 언제 자를까? 119
스레드 단면이 뭐길래 120
스레드 단면 해부하기 125
가장 간편한 Ctrl+Break와 Kill -Quit 131
jstack을 사용하는 방법도 있다 134
스레드 단면 파일로 남기기 135
정리하며 136

chapter 10 잘라 놓은 스레드 단면 분석하기 137
ThreadLogic 준비하기 137
ThreadLogic 사용하기 - 스레드 목록 확인 139
ThreadLogic 사용하기 - 잠겨 있는 스레드 확인 142
ThreadLogic 사용하기 - 무한 루프나 응답 없는 화면 확인 145
scouter를 사용한다면 스레드 목록 화면을 활용하자 148
scouter를 사용한다면 Stack Frequency Analyzer도 활용하자 150
정리하며 153

CHAPTER 11 스레드 문제 Case Study 154
스레드 단면으로 어떤 문제를 확인할 수 있을까? 154
시스템이 느릴 때도 스레드와 관련이 있을까? 156
시스템 응답이 없을 때에는 스레드 단면이 가장 효과적이다 157
예외가 지속해서 발생할 때도 스레드 단면이 도움이 될까? 159
사례 하나. CPU 사용량이 갑자기 올라가서 안 내려와요 160
상황 160
접근 방법 161
사례 둘. 스레드 풀의 스레드 개수가 계속 증가해요 162
상황 163
접근 방법 163
사례 셋. 시스템 응답이 없어요 165
상황 165
접근 방법 165
정리하며 167

PART IV 메모리 진단하기
CHAPTER 12 메모리 때문에 발생할 수 있는 문제들 171
자바의 메모리 영역 171
pc(program counter) 레지스터 172
JVM 스택 172
힙 172
메서드 영역 172
런타임 상수 풀 173
네이티브 메서드 스택 173
OutOfMemoryError는 언제 발생할까? 175
OutOfMemoryError 메시지의 의미 176
메모리 릭의 세 종류 178
수평적 메모리 릭 179
수직적 메모리 릭 179
대각선 형태의 메모리 릭 179
OutOfMemoryError 이외의 메모리 문제는 없을까? 180
정리하며 181

CHAPTER 13 메모리 단면 잘라 놓기 183
메모리 단면은 언제 자르나? 183
jmap으로 메모리 단면 생성하기 186
jmap의 -dump 옵션 사용하기 190
자동으로 힙 덤프 생성시키기 193
정리하며 195

CHAPTER 14 잘라 놓은 메모리 단면 분석하기 196
메모리 단면을 분석하는 도구들 196
MAT 준비하기 197
간단한 프로그램의 메모리 릭 찾기 198
MAT의 또 다른 기능들 201
Details 204
Biggest Objects by Retained Size 204
Actions 204
Reports 206
Step by Step 206
객체 상세 정보 메뉴 207
개발 PC의 메모리가 부족할 때 힙 덤프 분석하는 방법 210
scouter를 사용하여 메모리 문제 진단하기 211
GC 관련 211
힙 관련 211
정리하며 212

CHAPTER 15 메모리 문제 Case Study 213
메모리 단면으로 어떤 문제를 확인할 수 있을까? 213
시스템이 느리다고 항상 메모리 단면을 사용하는 것은 아니다 214
애플리케이션이 응답하지 않을 때도 메모리가 원인일 수 있다 215
사례 하나. 자꾸만 시스템이 OOME를 발생시켜요 216
상황 216
접근 방법 216
사례 둘. 시스템 응답이 없어요 218
상황 218
접근 방법 219
정리하며 221

PART V 자바 분석 도구
CHAPTER 16 자바 종합 분석 도구인 Arthas 225
Arthas란? 225
아서스 사용하기 226
아서스 주요 명령어들 228
dashboard 229
thread 230
jvm 232
sc/sm 234
monitor 235
stack/trace 236
tt 237
정리하며 239

PART VI 리눅스 진단하기
CHAPTER 17 리눅스 성능 진단 도구의 구성 243
리눅스 진단 명령어를 알아야 하는 이유 243
진단 도구 한눈에 살펴보기 244
60,000밀리초에 리눅스 시스템 분석하기 245
uptime 246
dmesg | tail 247
vmstat 1 247
mpstat -P ALL 1 248
pidstat 1 248
iostat -xz 1 248
free -m 249
sar -n DEV 1 250
sar -n TCP,ETCP 1 250
top 251
정리하며 251

CHAPTER 18 CPU 모니터링하기 252
시스템의 CPU 사용량을 한 줄로 모니터링하는 도구들 252
추가적인 시스템 모니터링 도구 설치하기 253
mpstat의 기본적인 사용 방법 255
mpstat의 옵션들 257
왜 CPU를 모니터링해야 하는 걸까? 262
정리하며 263

CHAPTER 19 전반적인 상황 모니터링하기 - vmstat와 sar 264
대부분의 유닉스와 리눅스에 설치되어 있는 vmstat 264
vmstat의 기본적인 사용법 265
vmstat의 옵션들 266
vmstat 옵션에 따른 출력 예 267
vmstat보다 상세한 정보를 알 수 있는 sar 273
sar의 기본적인 사용 방법 275
sar 명령어 옵션들 276
정리하며 278

CHAPTER 20 프로세스 상황 모니터링하기 279
프로세스 모니터링하기 279
프로세스 사이의 관계 알아보기 280
누구나 알고 있는 ps 283
프로세스별로 CPU 사용량 모니터링하기 286
프로세스의 메모리 상황을 확인하는 pmap 288
정리하며 291

CHAPTER 21 I/O 상황 모니터링하기 292
I/O를 모니터링하는 도구에는 어떤 것이 있을까? 292
디스크의 사용량을 알아보자 293
iostat를 알아보자 298
프로세스가 사용 중인 파일은 어떻게 확인할까? 302
정리하며 306

CHAPTER 22 네트워크 상황 모니터링하기 307
네트워크 상황을 모니터링하는 도구에는 어떤 것이 있을까? 307
네트워크를 사용하는 환경이 먼저 준비되어야 한다 308
sar로 네트워크 사용량 확인하기 311
lsof로 연결된 네트워크 정보 확인하기 317
사라질 네트워크 명령어들 320
정리하며 321

CHAPTER 23 실시간으로 시스템 모니터링하기 322
대부분의 리눅스에 설치되어 있는 top 322
top의 단축키들 325
top의 시작 옵션들 329
보다 예쁘고 간편한 htop 331
정리하며 334

CHAPTER 24 scouter로 리소스 모니터링하기 335
scouter 호스트 에이전트 확인 335
scouter에서 제공하는 리소스 모니터링 종류 336
실시간 프로세스 목록 확인하기 337
소켓 정보 확인하기 338
정리하며 339

PART VII 장애 진단 종합
CHAPTER 25 장애 진단은 이렇게 한다 343
진단 요청을 받았을 때(장애가 났을 때) 가장 먼저 할 일 343
본격적인 진단 시작하기 345
장애 원인 제거하고 결과 정리하기 348
scouter를 사용한 장애 감지와 원인 파악 353
상어 패턴 354
파도 패턴 354
ㅡ ㅡ 패턴 355
운석 낙하 패턴 356
산불 패턴 357
크리스마스트리 패턴 357
정리하며 358

APPENDIX 부록
APPENDIX A Fatal error log 분석 361
치명 에러 로그 파일 362
헤더 섹션 362
스레드 정보 섹션 367
프로세스 정보 섹션 372
시스템 정보 섹션 378
치명 에러가 발생하면 뭐부터 봐야 할까? 379

APPENDIX B 자바 인스트럭션 381
JVM 인스트럭션은 도대체 뭘까? 381

찾아보기 387
리뷰(0)
0 / 5.0
리뷰 작성
•
리뷰를 작성하시면 소정의 적립금을 드립니다.
•
도서의 첫번째 리뷰부터 10번째 리뷰까지는 기본 적립금의 2배를 적립해 드리며, 이후 리뷰부터는 기본 적립금이 적립됩니다.
리뷰 혜택 및 유의사항
배송방법

배송은 CJ대한통운(전화 : 1588-1255)을 이용해서 보내드리고 있습니다.

3만원 이상 구매시 무료배송 가능하며, 3만원 미만의 경우 2500원의 배송비가 발생합니다.

배송기간

15시 이전에 입금확인된 주문까지는 당일날 발송하며, 일반적인 경우 다음날 책을 받아보실 수 있습니다.

주말 또는 공휴일이 있거나 시기적으로 배송이 많은 기간인 경우는 지역에 따라 1~2일이 더 소요될 수 있습니다.

주문 후, 5일이 경과해도 책이 도착하지 않는 경우에는 웬디북 고객센터(전화 : 1800-9785)로 전화를 주시거나 고객센터 > 1:1 문의를 통해 문의글을 남겨주시면 확인 후 신속히 조치하도록 하겠습니다.

묶음배송

묶음배송 원하시는 모든 주문서의 상태가 "입금대기" 또는 "결제완료" 상태일 경우에만 처리가 가능하며, 고객센터 > 1:1 문의에서 신청 할 수 있습니다.

반품안내

변심반품의 경우 도서주문일로부터 15일이내에 반품접수가 가능하며, 반품 배송비는 고객님 부담입니다.

부분 반품의 경우, 3만원 이상 주문으로 무료배송 받았으나 일부 상품 반품으로 주문금액이 3만원이 안될 경우, 이전 주문의 배송비를 포함한 왕복 배송비를 부담하셔야 합니다.

반품절차는 고객센터의 반품교환신청 페이지에서 신청을 해주시면 웬디북 고객센터에서 지정택배사에 회수요청을 하고, 방문한 택배기사님을 통해 반품도서를 보내주시면 됩니다.

운송 중 책이 손상되지 않도록 포장을 해주신 후, 포장 겉면에 “반품도서”라고 기재해주시기 바랍니다. 회수된 상품은 요청해주신 환불방법에 따라 적립 또는 환불 진행해드립니다.

(특히 팝업북 등은 조그만 충격에도 책이 손상될 수 있으므로 주의해 주시기 바랍니다.)

• 반품이 불가한 경우
  • 1. 고객에게 책임 있는 사유로 상품(띠지 또는 더스트커버 포함)이 멸실 또는 훼손된 경우
  • 2. CD 나 소프트웨어 포함, 포장이 되어 있는 모든 상품의 포장 개봉
  • 3. 만화책 및 단시간 내에 완독이 가능한 잡지
  • 4. 상품과 함께 발송된 추가사은품이 분실되거나 훼손된 경우
  • 5. 고객의 사용 또는 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우
  • 6. 명시된 반품가능 기한이 지난 경우
  • 7. 세트상품중 일부 반품
교환안내

파본도서 혹은 오배송으로인한 교환은 도서주문일로부터 15일 이내에 신청하셔야 하며 이 경우 배송비는 웬디북에서 부담합니다.

(단, 팝업북과 CD가 세트인 책은 책의 특성상 7일 이내에 해주셔야 합니다.)

교환절차는 고객센터의 반품교환신청 페이지에서 신청을 해주시면 웬디북에서 새 책을 보내드리고 새 책을 받으실 때 교환도서와 맞교환 하시면 됩니다.

교환은 동일도서에 한하며, 다른 도서로 교환은 불가합니다.

운송도중 책이 손상되지 않도록 포장을 해주신 후, 포장 겉면에 “반품도서”라고 기재해주시기 바랍니다.

(특히 팝업북 등은 조그만 충격에도 책이 손상될 수 있으므로 주의해 주시기 바랍니다.)

• 교환이 불가한 경우
  • 1. 고객에게 책임 있는 사유로 상품이 멸실 또는 훼손된 경우
  • 2. 포장 상품의 포장을 해체한 경우
  • 3. 고객의 사용 또는 일부 소비에 의하여 상품의 가치가 현저히 감소한 경우
  • 4. 물품 수령 후, 15일이 경과한 경우
  • 5. 동일상품으로 교환하신 후, 다시 교환하시고자 할 경우 (이 경우에는 환불처리 해드립니다.)
신고하기
신고사유 선택
도서 입고 알림 신청
입고알림 신청하셨습니다.
입고시 {{tel}}로 문자 발송됩니다

바로 확인 하시겠습니까?
예

휴대폰 번호, 이메일 주소는

마이 페이지 > 회원정보수정에서 확인해 주세요.

관심 시리즈 신간 알림 신청
시리즈명:{{ series_name }}
관심 시리즈 신간 입고 알림 신청하셨습니다.
입고시 {{ tel }}로 문자 발송 또는
앱푸시, 이메일 등으로 알려드리겠습니다.

바로 확인 하시겠습니까?
예

휴대폰 번호, 이메일 주소는

마이 페이지 > 회원정보수정에서 확인해 주세요.

입고 알림 수신 방법 변경은

마이 페이지 > 알림 > 알림 설정에서 확인해 주세요.

푸시 알림이 오지 않을 시,

스마트폰 설정 > 알림 > 웬디북 앱 설정을 확인해 주세요

관심 작가 신간 알림 신청
작가명:{{ series_name }}
관심 작가 신간 입고 알림 신청하셨습니다.
입고시 {{ tel }}로 문자 발송 또는
앱푸시, 이메일 등으로 알려드리겠습니다.

바로 확인 하시겠습니까?
예

휴대폰 번호, 이메일 주소는

마이 페이지 > 회원정보수정에서 확인해 주세요.

입고 알림 수신 방법 변경은

마이 페이지 > 알림 > 알림 설정에서 확인해 주세요.

푸시 알림이 오지 않을 시,

스마트폰 설정 > 알림 > 웬디북 앱 설정을 확인해 주세요

{{title}}
{{content}}
{{title}}
{{content}}