책소개
일주일에 한 개씩, 단 7주 만에 7가지 동시성 모델 완전 학습!
멀티코어, 빅데이터, 분산 컴퓨팅을 다루는 데는 동시성과 병렬성이 핵심이다. 이 책은 동시성 프로그래밍의 핵심 내용을 다루며, 액터나 함수형 프로그래밍 같은 기술이 전통적인 스레드와 잠금장치 문제를 어떻게 풀 수 있는지 알려준다. GPGPU, 맵리듀스, 스트림 처리 등을 활용하여 코드의 성능, 확장성, 회복력을 향상해보자.
★업데이트 공지
- 이 책은 독자 피드백을 반영하여 2016년 7월 15일자로 업데이트되었습니다.
- 7월 15일 이후 고객님 단말기에서 전자책을 삭제한 후 재다운로드하시면 업데이트한 전자책이 다운로드됩니다.
※ 업데이트한 전자책을 재다운로드하면 고객님 단말기에 저장한 해당 도서 페이지, 책갈피 등을 삭제되오니 참고해 주세요.
목차
CHAPTER 1 서문
__1.1 동시성 혹은 병렬성?
__1.2 병렬 아키텍처
__1.3 동시성: 멀티코어를 넘어서
__1.4 일곱 가지 모델
CHAPTER 2 스레드와 잠금장치
__2.1 동작이 가능한 가장 단순한 코드
__2.2 1일 차: 상호배제와 메모리 모델
__2.3 2일 차: 내재된 잠금장치를 넘어서
__2.4 3일 차: 거인의 어깨 위에서
__2.5 마치며
CHAPTER 3 함수형 프로그래밍
__3.1 문제가 있으면 멈추는 것이 상책이다
__3.2 1일 차: 가변 상태 없이 프로그래밍하기
__3.3 2일 차: 함수 병렬화
__3.4 3일 차: 함수 동시성
__3.5 마치며
CHAPTER 4 클로저 방식 - 아이덴티티를 상태로부터 분리하기
__4.1 두 세계의 장점
__4.2 1일 차: 원자와 지속 자료구조
__4.3 2일 차: 에이전트와 소프트웨어 트랜잭션 메모리
__4.4 3일 차: 자세히
__4.5 마치며
CHAPTER 5 액터
__5.1 객체보다 더욱 객체지향적인
__5.2 1일 차: 메시지와 메일박스
__5.3 2일 차: 에러 처리와 유연성
__5.4 3일 차: 분산
__5.5 마치며
CHAPTER 6 순차 프로세스 통신
__6.1 의사소통이 모든 것이다
__6.2 1일 차: 채널과 고 블록
__6.3 2일 차: 여러 개의 채널과 IO
__6.4 3일 차: 클라이언트 측면의 CSP
__6.5 마치며
CHAPTER 7 데이터 병렬성
__7.1 노트북 속에 감춰진 슈퍼컴퓨터
__7.2 1일 차: GPGPU 프로그래밍
__7.3 2일 차: 다차원과 작업그룹
__7.4 3일 차: OpenCL과 OpenGL 데이터를 GPU에 놓기
__7.5 마치며
CHAPTER 8 람다 아키텍처
__8.1 병렬성이 빅데이터를 가능하게 만든다
__8.2 1일 차: 맵리듀스
__8.3 2일 차: 배치 계층
__8.4 3일 차: 속도 계층
__8.5 마치며
CHAPTER 9 마치며
__9.1 어디로 나아가는가?
__9.2 포함하지 않은 것들
__9.3 여러분 차례다