자바 최적화 - 가장 빠른 성능을 구현하는 검증된 10가지 기법
벤저민 J. 에번스 외 지음, 이일웅 옮김 / 한빛미디어 / 2019년 4월
평점 :
장바구니담기






chapter 1. 성능과 최적화

chapter 2. JVM 이야기

chapter 3. 하드웨어와 운영체제

chapter 4. 성능 테스트 패턴 및 안티패턴

chapter 5. 마이크로벤치마킹과 통계

chapter 6. 가비지 수집 기초

chapter 7. 가비지 수집 고급

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

chapter 9. JVM의 코드 실행

chapter 10. JIT 컴파일의 세계로

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

chapter 12. 동시 성능 기법

chapter 13. 프로파일링

chapter 14. 고성능 로깅 및 메시징

chapter 15. 자바 9와 미래



중고급으로 분류된 책이다. 어렵다.

자바 성능이나 최적화에 대해 깊게 고민해본 적이 없어 도전하듯 골라든 책인데

술술 읽지 못하고 꽤나 시간을 들여야 했다.

아직 거기까지 인사이트가 없어서 잘 안 와닿는 내용도 있었고.

뼈가 되고 살이 되리라 하면서 꾸역꾸역 읽었지만

책장에 꽂아두고 두고두고 봐야하는 책이라는 생각이 들었다.


챕터 4 성능 테스트 패턴 및 안티패턴이 꽤나 재미있었다.


4.1 성능 테스트 유형

4.2 기본 베스트 프랙티스

4.3 성능 안티패턴 개요

4.3.1 지루함

4.3.2 이력서 부풀리기

4.3.3 또래 압박

4.3.4 이해 부족

4.3.5 오해와 있지도 않은 문제

4.4 성능 안티패턴 카탈로그

4.4.1 화려함에 사로잡히다

4.4.2 단순함에 사로잡히다

4.4.3 성능 튜닝 도사

4.4.4 민간 튜닝

4.4.5 안되면 조상 탓

4.4.6 숲을 못 보고 나무만 보다

4.4.7 내 데스크톱이 UAT

4.4.8 운영 데이터처럼 만들기는 어려워

4.5 인지 편향과 성능 테스트


목차만 봐도 알겠지만 흥미롭다.

개발자들이 왜 잘못된 기술 선택을 밥 먹듯이 하는지에 대해 이야기하며 갖가지 안티패턴을 소개한다.

사람 사는 곳은 다 똑같구나 싶으면서도

저런 이야기들조차 다른 나라 이야기 같아서 한숨을 잠깐.


가비지 컬렉터에 대한 부분은 어려웠지만 흥미로웠다.

가비지 컬렉터가 뭐하는 놈인지 알고만 있었지, 실제로 어떤 알고리즘을 활용하여 돌아가는지까지는 전혀 궁금해하지 않았었다.

오호.. 하며 읽었지만 역시 어려움.


11장 자바 언어의 성능 향상 기법에서는 컬렉션 최적화에 대해 소개한다.

이 책 전체 중에서 가장 나와 가까운 챕터였다.


데이터를 저장할 때 어떤 옵션을 사용 가능할 수 있는지 이해하려면 여러분 스스로 자바 컬렉션 API가 지원하는 자료 구조 및 구현 세부를 꿰고 있어야 합니다.

자료 구조가 어떤 원리로 조회되고 수정되는지 모른 채 자료 구조를 선택하는 것처럼 위험한 일도 없습니다. 평소 즐겨 쓰는 클래스를 별생각 없이 바로 갖다 쓰는 개발자들이 참 많지요. 사려 깊은 개발자라면 데이터가 어떻게 질의 되고, 어떤 알고리즘이 가장 효율적인지 신중히 살펴볼 것입니다.


"별생각 없이 바로 갖다쓰는" 나는 명치 호되게 후려맞고 11장 경건하게 정독했다.

사려 깊은 개발자가 되기 위해 얼마나 많은 공부를 해야 할지.

아는 것이 힘이다. 아는 만큼 보인다. 공부하자.


댓글(0) 먼댓글(0) 좋아요(0)
좋아요
북마크하기찜하기 thankstoThanksTo