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

한빛출판네트워크

개발의 즐거운이 가득한 곳! DEVGROUND 2019 (6월 27일(목), 28일(금)) - 5월 30일 오후 1시 사전등록 시작

자바 최적화

가장 빠른 성능을 구현하는 검증된 10가지 기법

한빛미디어

번역서

판매중

  • 저자 : 벤저민 J. 에번스 , 제임스 고프 , 크리스 뉴랜드
  • 번역 : 이일웅
  • 출간 : 2019-04-29
  • 페이지 : 500 쪽
  • ISBN : 9791162241776
  • 물류코드 :10177
초급 초중급 중급 중고급 고급
5점 (1명)
좋아요 : 0

자바 애플리케이션 성능을 한 단계 높여줄 튜닝 이야기 

 

성능 튜닝은 실험과학이다. 추측과 구전 튜닝에 의존할 일이 아니다. 이 책은 복잡한 기술 스택을 다루는 중/고급 자바 개발자에게 정량적이고 검증 가능한 접근 방식으로 자바 애플리케이션 성능을 튜닝하는 방법을 알려준다.

 

성능 튜닝은 원하는 결과를 정의하고 결정하는 과정이다. 자바 성능에 관한 대부분 자료는 자바 가상 머신 이론과 내부의 모습을 살펴보는 데 그치지만, 이 책은 레시피, 팁/트릭, 알고리즘 등 다양한 부문을 살펴보며 성능 튜닝의 실용적 측면을 이야기한다.

 

 

자바 최적화_상세이미지[900].jpg

 

저자

벤저민 J. 에번스

데브옵스 팀을 위한 성능 툴 개발사인 jClarity의 공동 창업자이자 기술 위원이다. 자바 커뮤니티 프로세스 집행 위원회에서 런던 자바 커뮤니티 대표로 활동하며 자바 생태계의 표준을 제정하는 일을 했다. 자바 챔피언, 자바원 록스타인 그는 『The Well-Grounded Java Developer』(매닝, 2012)를 공동 집필했고 자바 플랫폼, 동시성, 기타 관련된 주제로 강연을 계속해오고 있다.

저자

제임스 고프

자바 개발자 및 저자이다. 워릭 대학교에 다니던 중 처음 자바에 매료되어, 졸업 후 런던 자바 커뮤니티에 가입했고 그때부터 이 커뮤니티를 중심으로 수년간 JSR-310 설계/테스트를 담당하며 JCP 집행 위원회에서 활동해왔다. 콘퍼런스 상임 연사이기도 한 그는 현재 모건 스탠리에서 고객응대 기술 구축에 매진하고 있으며, 세계 각지를 돌며 다양한 나라에서 오랫동안 자바, C++를 가르치고 있다.

저자

크리스 뉴랜드

자바 기술을 응용해 실시간 주식 데이터를 처리하는 ADVFN 사이트의 선임 자바 개발자다. 핫스팟 JVM 내부에서 이루어지는 JIT (적시) 컴파일 결정을 시각화하는 오픈 소스 로그분석기, JITWatch 프로젝트의 저작자다. 자바 챔피언인 그는 여러 콘퍼런스에서 JIT 컴파일 기술 강연을 한다.

역자

이일웅

13여 년 동안 자바/스칼라 개발자, 애플리케이션 아키텍트로 활동하며 엔터프라이즈 프로젝트 현장을 누벼온 야전형 정보 기술자이자, 한 여인과 두 딸의 사랑을 한 몸에 받고 사는 행복한 딸바보이다. 2014년 이후로 십수 권의 IT 전문서를 번역하며 동료, 후배 개발자들과 지식, 경험을 나누는 일에도 힘쓰고 있으며, 시간이 나면 피아노를 연주한다.

CHAPTER 1 성능과 최적화

1.1 자바 성능: 잘못된 방법

1.2 자바 성능 개요

1.3 성능은 실험과학이다

1.4 성능 분류

1.5 성능 그래프 읽기

1.6 마치며

 

CHAPTER 2 JVM 이야기

2.1 인터프리팅과 클래스로딩

2.2 바이트코드 실행

2.3 핫스팟 입문

2.4 JVM 메모리 관리

2.5 스레딩과 자바 메모리 모델(JMM)

2.6 JVM 구현체 종류

2.7 JVM 모니터링과 툴링

2.8 마치며

 

CHAPTER 3 하드웨어와 운영체제

3.1 최신 하드웨어 소개

3.2 메모리

3.3 최신 프로세서의 특성

3.4 운영체제

3.5 단순 시스템 모델

3.6 기본 감지 전략

3.7 가상화

3.8 JVM과 운영체제

3.9 마치며

 

CHAPTER 4 성능 테스트 패턴 및 안티패턴

4.1 성능 테스트 유형

4.2 기본 베스트 프랙티스

4.3 성능 안티패턴 개요

4.4 성능 안티패턴 카탈로그

4.5 인지 편향과 성능 테스트

4.6 마치며

 

CHAPTER 5 마이크로벤치마킹과 통계

5.1 자바 성능 측정 기초

5.2 JMH 소개

5.3 JVM 성능 통계

5.4 통계치 해석

5.5 마치며

 

CHAPTER 6 가비지 수집 기초

6.1 마크 앤 스위프

6.2 핫스팟 런타임 개요

6.3 할당과 수명

6.4 핫스팟의 가비지 수집

6.5 병렬 수집기

6.6 할당의 역할

6.7 마치며

 

CHAPTER 7 가비지 수집 고급

7.1 트레이드오프와 탈착형 수집기

7.2 동시 GC 이론

7.3 CMS

7.4 G1

7.5 셰난도아

7.6 C4(아줄 징)

7.7 밸런스드(IBM J9)

7.8 레거시 핫스팟 수집기

7.9 마치며

 

CHAPTER 8 GC 로깅, 모니터링, 튜닝, 툴

8.1 GC 로깅 개요

8.2 로그 파싱 툴

8.3 GC 기본 튜닝

8.4 Parallel GC 튜닝

8.5 CMS 튜닝

8.6 G1 튜닝

8.7 jHiccup

8.8 마치며

 

CHAPTER 9 JVM의 코드 실행

9.1 바이트코드 해석

9.2 AOT와 JIT 컴파일

9.3 핫스팟 JIT 기초

9.4 코드 캐시

9.5 간단한 JIT 튜닝법

9.6 마치며

 

CHAPTER 10 JIT 컴파일의 세계로

10.1 JITWatch란?

10.2 JIT 컴파일 개요

10.3 인라이닝

10.4 루프 펼치기 

10.5 탈출 분석

10.6 단형성 디스패치

10.7 인트린직

10.8 온-스택 치환

10.9 세이프포인트 복습

10.10 코어 라이브러리 메서드

10.11 마치며

 

CHAPTER 11 자바 언어의 성능 향상 기법

11.1 컬렉션 최적화

11.2 List 최적화

11.3 Map 최적화

11.4 Set 최적화

11.5 도메인 객체 

11.6 종료화 안 하기

11.7 메서드 핸들 

11.8 마치며

 

CHAPTER 12 동시 성능 기법

12.1 병렬성이란?

12.2 JMM의 이해

12.3 동시성 라이브러리 구축

12.4 동시 라이브러리 정리

12.5 실행자와 태스크 추상화

12.6 최신 자바 동시성

12.7 마치며

 

CHAPTER 13 프로파일링

13.1 프로파일링 개요

13.2 샘플링과 세이프포인팅 편향

13.3 개발자용 프로파일링 툴

13.4 최신 프로파일러

13.5 할당 프로파일링

13.6 힙 덤프 분석

13.7 마치며

 

CHAPTER 14 고성능 로깅 및 메시징

14.1 로깅

14.2 성능에 영향이 적은 로거 설계하기

14.3 리얼 로직 라이브러리를 이용해 지연 줄이기

14.4 마치며

 

CHAPTER 15 자바 9와 미래

15.1 자바 9에서 소소하게 개선된 성능

15.2 자바 10과 그 이후 버전

15.3 자바 9 Unsafe 그 너머

15.4 발할라 프로젝트와 값 타입

15.5 그랄과 트러플

15.6 바이트코드의 향후 발전 방향

15.7 동시성의 향후 발전 방향

15.8 마치며

  • 평소 프로그램을 개발할 때, 기능 구현이 모두 완료된 후 반드시 리팩토링 과정을 거치곤 합니다. 디버깅 할 때 삽입되었던 코드 또는 레거시 코드들을 정리하기 위해서죠. 하지만 '최적화' 하여 프로그램의 성능을 향상시키기엔 실력도, 개념도 많이 부족했습니다. 섣불리 최적화를 하겠다고 나섰다가 다시 코드 버전을 되돌렸던 적도 있어서, 이후로 최적화를 시도할 엄두를 내지 못했습니다. 또한 자바 개념서들은 많이 출판되어 있지만 저처럼 최적화에 대해 잘 모르는 개발자들이 볼 수 있는 국문 서적은 쉽게 찾아볼 수 없었습니다. 그러던 중, 이번에 한빛미디어에서 자바 최적화 번역서를 펴냈기에 바로 읽어보았습니다.

     

    [이 책은]

    이 책은 저명한 자바 개발자들이 직접 펴내고, 수 년 간 자바/스칼라 개발자께서 옮긴 믿을 수 있는 번역서입니다.

    어떤 번역서들은 영어 단어를 읽은 발음을 국어로 옮겨 적어 쉽게 읽히지 않지만 이 책은 자바 용어를 제외하고는 매끄럽게 읽혀 좋았습니다.

    먼저 NOTE 부분은 본문에 보충할 부분이나 본문과 연관된 팁들이 적혀 있는 란입니다.

    책을 읽으며 학습할 때 쉬어가는 부분도 되어 주고, 여러 꿀팁들도 얻을 수 있습니다.

    개인적으로는 관련 정보를 얻을 때 유용하게 사용하고 있는 부분입니다.

    

    개념을 가시화해 준 부분은 수명 주기나 코드 작동 순서, 작성한 코드가 어떤 순서로 어디에 영향을 주며 실행되는지를 가시화해주어 훨씬 이해하기 편했습니다.

    추가로, 사실 이번 책에서 좋았던 점은 과하지 않은 컬러였습니다.

    제가 접했던 개발 도서들은 보통 흑백이었는데 이 책은 컬러가 입혀져 있어 좀 더 강조되는 부분을 확실히 알 수 있었습니다.

     

    하드웨어 메모리 지원과 같은 부가 정보를 표로 잘 정리해 두어 내용을 한눈에 파악할 수 있게 된 점이 좋았습니다. 

    여러 줄의 줄글보다도 위의 모식도나 표로 간략하게 표현된 것이 머릿속에 이미지로 확 들어오는 듯한 느낌입니다.

    또한 번역한 단어 또는 용어를 각주와 주석으로 한번 더 기재해 주어 정확한 표현과 용어를 숙지할 수 있습니다.

     

    성능 테스트 관련된 부분은 증상, 현실, 진단, 처방 등의 단계를 눈에 띄게 나눠 두어 이해하기 쉬웠습니다.

    어떤 순서로 현상을 숙지하고, 어떻게 해결해야 하는지 아이디어를 얻을 수 있었습니다.


    [책을 덮으며]

    책을 정독한 후 코드 최적화로 프로그램의 메모리 사용량, 구동 속도를 개선할 수 있다는 자신감이 생겼습니다.

    자바 기본 개념에서 파생된 최적화 방법이 잘 설명되어 있어 이해하기 편했습니다.

    또한 여는 말에도 썼듯이 번역서임에도 불구하고 문장이 매끄러워 자연스럽게 읽어나갈 수 있었습니다.

    이 책은 개발을 시작한 지 얼마 되지 않은 개발자보다는 자바라는 언어에 대한 기본 지식이 있고 이를 이용해 개발을 해 본 개발자들을 위한 도서라고 생각됩니다. 기본 개념을 알고 있어야 이해할 수 있는 내용들이 일부 있었고, 책의 난이도가 아주 쉽고 내용이 단순한 편은 아니었다고 생각합니다. 


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

배송료 안내

  • 책, 아이템 등 상품을 3만원 이상 구매시 무료배송
  • 브론즈, 실버, 골드회원이 주문하신 경우 무료배송

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

닫기

리뷰쓰기

닫기
* 도서명 :
자바 최적화
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

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

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

오탈자 등록

닫기
* 도서명 :
자바 최적화
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
자바 최적화
구입처*
구입일*
부가기호*
부가기호 안내

* 회원가입후 도서인증을 하시면 마일리지 500점을 드립니다.

* 한빛 웹사이트에서 구입한 도서는 자동 인증됩니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한됩니다.

* 절판도서, eBook 등 일부 도서는 도서인증이 제한됩니다.

닫기

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

자료실