자바 최적화(2판)
클라우드 시대의 자바 성능 튜닝을 위한 실용적인 기법
Regular price
$47.19
Sale price
Regular price
✈️
Estimated delivery date 예상 배송일
Standard Shipping
불러오는 중...
주문일로부터 8-12 영업일
Express Shipping
불러오는 중...
주문일로부터 6-8 영업일
자바 성능 튜닝, 소문과 감에 의존하지 말고 과학적으로 접근하라!
구체적인 사례와 코드로 배우는 클라우드 네이티브 자바 실전 가이드
성능 튜닝은 실험 과학입니다. 막연한 추측이나 검증되지 않은 정보에 의존해서는 안 됩니다. 이 책은 중급 이상의 자바 개발자를 위해 복잡한 기술 스택 환경에서 자바 클라우드 애플리케이션의 성능을 정량적이고 검증 가능하며 반복할 수 있는 방식으로 튜닝하는 방법을 소개합니다.
2판에서는 특히 클라우드 환경에서 자바 애플리케이션의 성능을 최적화하는 데 중점을 둡니다. 대부분의 자바 성능 자료가 JVM 이론이나 내부 구조 설명에 머무는 데 반해, 이 책은 레시피, 팁과 트릭, 알고리즘 등 실용적인 성능 튜닝 방안을 깊이 있게 다룹니다.
구체적인 사례와 코드로 배우는 클라우드 네이티브 자바 실전 가이드
성능 튜닝은 실험 과학입니다. 막연한 추측이나 검증되지 않은 정보에 의존해서는 안 됩니다. 이 책은 중급 이상의 자바 개발자를 위해 복잡한 기술 스택 환경에서 자바 클라우드 애플리케이션의 성능을 정량적이고 검증 가능하며 반복할 수 있는 방식으로 튜닝하는 방법을 소개합니다.
2판에서는 특히 클라우드 환경에서 자바 애플리케이션의 성능을 최적화하는 데 중점을 둡니다. 대부분의 자바 성능 자료가 JVM 이론이나 내부 구조 설명에 머무는 데 반해, 이 책은 레시피, 팁과 트릭, 알고리즘 등 실용적인 성능 튜닝 방안을 깊이 있게 다룹니다.
Couldn't load pickup availability
출판사 리뷰
출판사 리뷰
주요 내용
● 최신 하드웨어, 운영 체제, 클라우드 스택을 최대한 활용하는 자바 원리와 기술
● 자바 성능 수치를 측정할 때 자주 빠지는 함정과 마이크로벤치마킹의 한계
● 자바/JVM 애플리케이션을 클라우드 환경에서 패키징, 배포, 운영, 디버깅하는 방법
● 최신 관찰 가능성 도구를 활용한 클라우드 네이티브 애플리케이션 심층 분석
● 병렬 처리와 분산 시스템 등 다양한 자바 성능 최적화 기법
대상 독자
● 클라우드 플랫폼 엔지니어: 컨테이너 한 대당 메모리를 절반으로 줄이고 싶은 분
● 마이크로서비스 설계자: 스프링부트, 쿼커스 중 무엇이 우리 팀에 맞을지 고민하는 분
● 퍼포먼스, SRE 담당자: JFR, JIT 로그, ZGC 튜닝으로 지연 시간을 자유자재로 다뤄야 하는 분
● 주니어 개발자: '자바=느림'이라는 낡은 편견을 깨고 싶은 모든 분
클라우드 시대의 자바, 한계를 뛰어넘는 최적화의 기술
클라우드 환경에서의 자바 성능 최적화는 단순한 코딩 기술을 넘어 인프라 전반에 걸친 깊이 있는 이해와 지속적인 관리가 요구되는 영역입니다. 이 책은 클라우드 네이티브 환경에서 자바를 효과적으로 활용하는 방법과 성능 최적화 전략을 체계적으로 다룹니다. 단순히 자바 개발자만을 위한 내용에 국한되지 않고, 클라우드 환경에서 시스템 최적화와 성능에 궁금증을 가진 모든 분께 유익한 길잡이가 될 것입니다.
JVM의 메모리 관리와 가비지 컬렉션부터 클라우드 환경에서의 배포 및 관측 가능성, 프로파일링, 병렬 처리 기법과 분산 시스템 패턴까지 폭넓게 다룹니다. 특히 성능 테스트 방법론, 하드웨어 및 운영 체제와의 상호작용, 컨테이너와 가상화 기술 등 현실적이고 실무적인 주제들을 꼼꼼하게 다룹니다. 더 나아가 현대적인 자바 애플리케이션 개발과 배포 전략, 마이크로서비스 환경에서의 성능 이슈와 해결 방법 등 현장에서 즉시 적용할 수 있는 유용한 지침도 담고 있습니다. 이 책은 여러분의 실무 역량을 한 단계 높이는 데 큰 도움이 될 것입니다.
● 최신 하드웨어, 운영 체제, 클라우드 스택을 최대한 활용하는 자바 원리와 기술
● 자바 성능 수치를 측정할 때 자주 빠지는 함정과 마이크로벤치마킹의 한계
● 자바/JVM 애플리케이션을 클라우드 환경에서 패키징, 배포, 운영, 디버깅하는 방법
● 최신 관찰 가능성 도구를 활용한 클라우드 네이티브 애플리케이션 심층 분석
● 병렬 처리와 분산 시스템 등 다양한 자바 성능 최적화 기법
대상 독자
● 클라우드 플랫폼 엔지니어: 컨테이너 한 대당 메모리를 절반으로 줄이고 싶은 분
● 마이크로서비스 설계자: 스프링부트, 쿼커스 중 무엇이 우리 팀에 맞을지 고민하는 분
● 퍼포먼스, SRE 담당자: JFR, JIT 로그, ZGC 튜닝으로 지연 시간을 자유자재로 다뤄야 하는 분
● 주니어 개발자: '자바=느림'이라는 낡은 편견을 깨고 싶은 모든 분
클라우드 시대의 자바, 한계를 뛰어넘는 최적화의 기술
클라우드 환경에서의 자바 성능 최적화는 단순한 코딩 기술을 넘어 인프라 전반에 걸친 깊이 있는 이해와 지속적인 관리가 요구되는 영역입니다. 이 책은 클라우드 네이티브 환경에서 자바를 효과적으로 활용하는 방법과 성능 최적화 전략을 체계적으로 다룹니다. 단순히 자바 개발자만을 위한 내용에 국한되지 않고, 클라우드 환경에서 시스템 최적화와 성능에 궁금증을 가진 모든 분께 유익한 길잡이가 될 것입니다.
JVM의 메모리 관리와 가비지 컬렉션부터 클라우드 환경에서의 배포 및 관측 가능성, 프로파일링, 병렬 처리 기법과 분산 시스템 패턴까지 폭넓게 다룹니다. 특히 성능 테스트 방법론, 하드웨어 및 운영 체제와의 상호작용, 컨테이너와 가상화 기술 등 현실적이고 실무적인 주제들을 꼼꼼하게 다룹니다. 더 나아가 현대적인 자바 애플리케이션 개발과 배포 전략, 마이크로서비스 환경에서의 성능 이슈와 해결 방법 등 현장에서 즉시 적용할 수 있는 유용한 지침도 담고 있습니다. 이 책은 여러분의 실무 역량을 한 단계 높이는 데 큰 도움이 될 것입니다.
목차
목차
CHAPTER 1 최적화와 성능 정의
_1.1 잘못된 자바 성능 최적화 방법
_1.2 자바 성능 개요
_1.3 실증 과학으로서의 성능
_1.4 성능을 위한 분류 체계
_1.5 성능 그래프 읽기
_1.6 클라우드 시스템의 성능
_1.7 요약
CHAPTER 2 성능 테스트 방법론
_2.1 성능 테스트 종류
_2.2 모범 사례 개론
_2.3 성능 안티 패턴의 원인
_2.4 자바 가상 머신 성능을 위한 통계
_2.5 통계 해석
_2.6 인지적 편향과 성능 테스트
_2.7 요약
CHAPTER 3 자바 가상 머신 개요
_3.1 인터프리팅과 클래스 로딩
_3.2 바이트코드 실행
_3.3 핫스팟 소개
_3.4 JIT 컴파일 소개
_3.5 자바 가상 머신 메모리 관리
_3.6 스레딩과 자바 메모리 모델
_3.7 자바 가상 머신 모니터링 또는 도구
_3.8 자바 구현, 배포 또는 릴리스
_3.9 요약
CHAPTER 4 가비지 컬렉션 이해하기
_4.1 마크 앤 스윕 소개
_4.2 가비지 컬렉션 용어집
_4.3 핫스팟 런타임 소개
_4.4 할당과 수명 주기
_4.5 약한 세대 가설
_4.6 핫스팟의 프로덕션 가비지 컬렉션 기술
_4.7 병렬 컬렉터
_4.8 할당의 역할
_4.9 요약
CHAPTER 5 고급 가비지 컬렉션
_5.1 트레이드오프와 플러그형 컬렉터
_5.2 동시 가비지 컬렉션 이론
_5.3 G1
_5.4 셰넌도어
_5.5 ZGC
_5.6 Balanced(이클립스 OpenJ9)
_5.7 니치 핫스팟 컬렉터
_5.8 요약
CHAPTER 6 자바 가상 머신에서 코드 실행
_6.1 전통적인 자바 애플리케이션 수명 주기
_6.2 바이트코드 해석 개요
_6.3 핫스팟에서의 JIT 컴파일
_6.4 자바 프로그램 실행의 진화
_6.5 요약
CHAPTER 7 하드웨어와 운영 시스템
_7.1 현대 하드웨어 소개
_7.2 메모리
_7.3 현대 프로세서의 특징
_7.4 운영 체제
_7.5 간단한 시스템 모델
_7.6 요약
CHAPTER 8 클라우드 스택의 구성 요소
_8.1 클라우드 스택을 위한 자바 표준
_8.2 클라우드 네이티브 컴퓨팅 재단
_8.3 가상화
_8.4 이미지와 컨테이너
_8.5 네트워킹
_8.6 Fighting Animals 예제 소개
_8.7 요약
CHAPTER 9 클라우드에서의 자바 배포
_9.1 로컬 환경에서 컨테이너 작업하기
_9.2 컨테이너 오케스트레이션
_9.3 배포 기술
_9.4 자바 특화 고려 사항
_9.5 요약
CHAPTER 10 관측성 소개
_10.1 관측성이 중요한 이유
_10.2 세 가지 핵심 요소
_10.3 관측성 아키텍처 패턴과 안티 패턴
_10.4 관측성 기반의 애플리케이션 문제 진단
_10.5 상용 솔루션과 오픈 소스 소프트웨어
_10.6 요약
CHAPTER 11 자바에서 관측성 구현
_11.1 마이크로미터 소개
_11.2 자바 개발자를 위한 프로메테우스 소개
_11.3 오픈텔레메트리 소개
_11.4 자바에서 오픈텔레메트리 추적 적용
_11.5 자바에서 오픈텔레메트리 지표 적용
_11.6 자바에서 오픈텔레메트리 로그 적용
_11.7 요약
CHAPTER 12 프로파일링
_12.1 프로파일링 소개
_12.2 GUI 기반 프로파일링 도구
_12.3 샘플링과 세이프포인트 편향
_12.4 최신 프로파일러
_12.5 JDK Flight Recorder(JFR)
_12.6 프로파일링의 운영적 측면
_12.7 메모리 프로파일링
_12.8 요약
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 Fighting Animals 개선
_14.5 요약
CHAPTER 15 현대적 성능과 미래
_15.1 새로운 동시성 패턴
_15.2 파나마
_15.3 라이덴
_15.4 발할라
_15.5 결론
Appendix A 마이크로벤치마킹
Appendix B 성능 안티 패턴
_1.1 잘못된 자바 성능 최적화 방법
_1.2 자바 성능 개요
_1.3 실증 과학으로서의 성능
_1.4 성능을 위한 분류 체계
_1.5 성능 그래프 읽기
_1.6 클라우드 시스템의 성능
_1.7 요약
CHAPTER 2 성능 테스트 방법론
_2.1 성능 테스트 종류
_2.2 모범 사례 개론
_2.3 성능 안티 패턴의 원인
_2.4 자바 가상 머신 성능을 위한 통계
_2.5 통계 해석
_2.6 인지적 편향과 성능 테스트
_2.7 요약
CHAPTER 3 자바 가상 머신 개요
_3.1 인터프리팅과 클래스 로딩
_3.2 바이트코드 실행
_3.3 핫스팟 소개
_3.4 JIT 컴파일 소개
_3.5 자바 가상 머신 메모리 관리
_3.6 스레딩과 자바 메모리 모델
_3.7 자바 가상 머신 모니터링 또는 도구
_3.8 자바 구현, 배포 또는 릴리스
_3.9 요약
CHAPTER 4 가비지 컬렉션 이해하기
_4.1 마크 앤 스윕 소개
_4.2 가비지 컬렉션 용어집
_4.3 핫스팟 런타임 소개
_4.4 할당과 수명 주기
_4.5 약한 세대 가설
_4.6 핫스팟의 프로덕션 가비지 컬렉션 기술
_4.7 병렬 컬렉터
_4.8 할당의 역할
_4.9 요약
CHAPTER 5 고급 가비지 컬렉션
_5.1 트레이드오프와 플러그형 컬렉터
_5.2 동시 가비지 컬렉션 이론
_5.3 G1
_5.4 셰넌도어
_5.5 ZGC
_5.6 Balanced(이클립스 OpenJ9)
_5.7 니치 핫스팟 컬렉터
_5.8 요약
CHAPTER 6 자바 가상 머신에서 코드 실행
_6.1 전통적인 자바 애플리케이션 수명 주기
_6.2 바이트코드 해석 개요
_6.3 핫스팟에서의 JIT 컴파일
_6.4 자바 프로그램 실행의 진화
_6.5 요약
CHAPTER 7 하드웨어와 운영 시스템
_7.1 현대 하드웨어 소개
_7.2 메모리
_7.3 현대 프로세서의 특징
_7.4 운영 체제
_7.5 간단한 시스템 모델
_7.6 요약
CHAPTER 8 클라우드 스택의 구성 요소
_8.1 클라우드 스택을 위한 자바 표준
_8.2 클라우드 네이티브 컴퓨팅 재단
_8.3 가상화
_8.4 이미지와 컨테이너
_8.5 네트워킹
_8.6 Fighting Animals 예제 소개
_8.7 요약
CHAPTER 9 클라우드에서의 자바 배포
_9.1 로컬 환경에서 컨테이너 작업하기
_9.2 컨테이너 오케스트레이션
_9.3 배포 기술
_9.4 자바 특화 고려 사항
_9.5 요약
CHAPTER 10 관측성 소개
_10.1 관측성이 중요한 이유
_10.2 세 가지 핵심 요소
_10.3 관측성 아키텍처 패턴과 안티 패턴
_10.4 관측성 기반의 애플리케이션 문제 진단
_10.5 상용 솔루션과 오픈 소스 소프트웨어
_10.6 요약
CHAPTER 11 자바에서 관측성 구현
_11.1 마이크로미터 소개
_11.2 자바 개발자를 위한 프로메테우스 소개
_11.3 오픈텔레메트리 소개
_11.4 자바에서 오픈텔레메트리 추적 적용
_11.5 자바에서 오픈텔레메트리 지표 적용
_11.6 자바에서 오픈텔레메트리 로그 적용
_11.7 요약
CHAPTER 12 프로파일링
_12.1 프로파일링 소개
_12.2 GUI 기반 프로파일링 도구
_12.3 샘플링과 세이프포인트 편향
_12.4 최신 프로파일러
_12.5 JDK Flight Recorder(JFR)
_12.6 프로파일링의 운영적 측면
_12.7 메모리 프로파일링
_12.8 요약
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 Fighting Animals 개선
_14.5 요약
CHAPTER 15 현대적 성능과 미래
_15.1 새로운 동시성 패턴
_15.2 파나마
_15.3 라이덴
_15.4 발할라
_15.5 결론
Appendix A 마이크로벤치마킹
Appendix B 성능 안티 패턴
저자
저자
벤저민 J. 에번스
(Benjamin J. Evans)
레드햇 런타임즈에서 수석 소프트웨어 엔지니어이자 관측성 총괄을 맡고 있는 아키텍트, 저자, 교육자입니다. 또한 자바 챔피언이며, 『자바 최적화』를 포함해 7권 이상의 프로그래밍 서적을 집필한 자바 전문가입니다. 전에는 뉴렐릭에서 계측 담당 수석 아키텍트로 재직했으며, 마이크로소프트에 인수된 제이클래리티의 공동 창립자이기도 합니다. 또한 자바 SE/EE 실행 위원회 멤버로 활동한 경력이 있습니다.
레드햇 런타임즈에서 수석 소프트웨어 엔지니어이자 관측성 총괄을 맡고 있는 아키텍트, 저자, 교육자입니다. 또한 자바 챔피언이며, 『자바 최적화』를 포함해 7권 이상의 프로그래밍 서적을 집필한 자바 전문가입니다. 전에는 뉴렐릭에서 계측 담당 수석 아키텍트로 재직했으며, 마이크로소프트에 인수된 제이클래리티의 공동 창립자이기도 합니다. 또한 자바 SE/EE 실행 위원회 멤버로 활동한 경력이 있습니다.
Payment & Security
Payment methods
Your payment information is processed securely. We do not store credit card details nor have access to your credit card information.

