도서 리뷰

[도서] Troubleshooting JAVA 자바 잘 읽는법 (라우렌치우 스필커 지음/ 이일웅 옮김/ 제이펍)

하나의묵 2024. 5. 9. 21:58

도서 표지

 

 

도서 소개

 

Troubleshooting JAVA 자바 잘 읽는 법 (라우렌치우 스필커 지음/ 이일웅 옮김)은 자바를 사용

하는 환경에서 버그를 찾는 디버깅과 프로파일링, 로깅 기법 등에대해서 실용적인 방법들을

소개하며, 서비스를 운영하면서 충돌이나, 문제의 근보적인 원인을 찾고 해석할 수 있는 방안

들을 제시하는 책입니다.

 

 

책에서 다루는 주요 내용들

  • 트러블 슈팅 기본테크닉 (일반적인 문제 조사 시나리오, 속도저하이슈, 디버거 활용 조사)
  • 브레이크포인트의 다양한 사용방법 소개, 조사 시나리오 변경 방법 설명
  • 원격 앱 디버깅 방법 소개
  • 로깅 및 로그를 활용한 예외 스택 트레이스 확인 방법 
  • 프로파일러를 활용한 리소스(메모리, CPU 등) 분석방법 
  • 프로파일링을 통한 메서드 관련 정보 및 SQL 쿼리분석방법
  • 로깅 데이터 시각화도구 활용법
  • 자바 스레드란 무엇인가 설명
  • 자바 메모리 관리체계 설명
  • 멀티스레드 환경에서의 락문제 모니터링 및 분석 방법 
  • 스레드 덤프를 활용한 문제조사
  • 대규모시스템 (ex) MSA 아키텍쳐)에서의 통신 관련 방안

 

책을 읽으면서 좋았던 부분

 

디버깅 시 브레이크 포인트는 많이 사용하는 것에 비해 힙덤프나 프로파일러는 거의 사용해 본

경험이 없었던 것 같습니다. 

 

해당 도서에서는 개발자라면 자연스럽게 익히게 되는 디버깅 방법뿐만 아니라 다양한 문제를

분석하고, 해결할 수 있는 힙덤프나 프로파일러를 활용한 분석기법을 자바 예시코드와 함께

학습합니다. 

 

디버깅을 독학하거나, 경험으로만 알고 있을 때는 찾기 어려운 고급 테크닉과 실제 예제를

더하여 문제를 찾아보는 과정이, 개발을 시작한 주니어 개발자뿐만 아니라 디버깅 관련하여

학습을 하고자 하는 모든 분들에게 유익한 정보들이 많았던 것 같습니다.

 

힙 덤프 관련 예제도 아래 이미지와 같이 하나하나 어떤 부분에 해당하는지, 어떤 데이터를 

봐야 하는지 설명해 주는 부분들이 이해하기 쉬웠습니다.

 

 

 

마찬가지로 스레드 덤프나, 스택트레이스를 통해 메서드들이 어떤 식으로 호출되는지,

그러한 실행 사이사이에 틀어가는 에스펙트와 같은 기법이 존재할 경우 어떤식으로

확인을 해야 하는지 세세하게 다양한 정보들을 이 책에서는 제공을 해주어서 정말

좋았던 것 같습니다. 

 

 

총평

 

책에서도 나오듯이 개발자라는 직업은 실제로 개발을 하는 시간보다, 협의하거나 스펙을

정의하고 문제를 어떤 식으로 잘 해결하는 방법을 찾거나 에러사항을 해결하는 것에 많은

시간을 사용합니다.

 

해당 책에서는 기본적인 디버깅 방법뿐만 아니라 각종 기법들을 알기 쉽게 설명해 주어 

실제 필드에서 개발하는 사람도 상당히 도움이 될만한 정보들을 많이 제공해주고 있습니다.

개발 언어나, 프레임워크적인 부분에서 설명하는 책들은 많지만 이렇게 문제의 원인을 

찾아내고 분석하는 방법을 설명하는 도서는 많이 보지 못했던 것 같습니다.

 

이 책을 통해서 디버깅, 프로파일러, 힙덤프 등 문제해결에 유용한 정보들을 많이 얻었던 것

같습니다. 자바영역 쪽을 개발하시는 분들이나 문제 해결능력을 기르고 싶으신 분들이라면

꼭 한번 읽어보시는 것을 추천드리고 싶습니다.

 

 

 

 

해당 리뷰는 제이펍 서평단으로써 제공받은 도서를 읽고 작성하였습니다.