품목정보
발행일 | 2022년 06월 02일 |
---|---|
쪽수, 무게, 크기 | 368쪽 | 646g | 183*235*15mm |
ISBN13 | 9791162245675 |
ISBN10 | 1162245670 |
발행일 | 2022년 06월 02일 |
---|---|
쪽수, 무게, 크기 | 368쪽 | 646g | 183*235*15mm |
ISBN13 | 9791162245675 |
ISBN10 | 1162245670 |
CHAPTER 1 클라우드 네이티브 애플리케이션이란? 1.1 클라우드 네이티브의 개념 1.2 클라우드 네이티브 애플리케이션 개발 방법론 1.3 클라우드 네이티브 애플리케이션 디자인 패턴 1.4 클라우드 네이티브 애플리케이션 참조 모델 1.5 마치며 CHAPTER 2 통신 패턴 2.1 동기 메시징 패턴 2.2 비동기 메시징 패턴 2.3 서비스 정의 패턴 2.4 동기 메시징 패턴 구현에 사용할 수 있는 기술 2.5 비동기 메시징 패턴 구현 기술 2.6 테스팅 2.7 보안 2.8 관측 가능성 및 모니터링 2.9 데브옵스 2.10 마치며 CHAPTER 3 연결성 및 조합 패턴 3.1 연결성 패턴 3.2 서비스 조합 패턴 3.3 마치며 CHAPTER 4 데이터 관리 패턴 4.1 데이터 아키텍처 4.2 데이터의 타입과 형태 4.3 데이터 저장소 4.4 데이터 관리 4.5 데이터 조합 패턴 4.6 데이터 확장 패턴 4.7 성능 최적화 패턴 4.8 신뢰성 패턴 4.9 보안: 볼트 키 패턴 4.10 데이터 관리 패턴 구현 기술 4.11 테스팅 4.12 보안 4.13 관측 가능성 및 모니터링 4.14 데브옵스 4.15 마치며 CHAPTER 5 이벤트 주도 아키텍처 패턴 5.1 이벤트 주도 아키텍처 5.2 이벤트 전달 패턴 5.3 상태 관리 패턴 5.4 오케스트레이션 패턴 5.5 이벤트 주도 아키텍처에서 사용하는 기술 5.6 테스팅 5.7 보안 5.8 관측 가능성 및 모니터링 5.9 데브옵스 5.10 마치며 CHAPTER 6 스트림 프로세싱 패턴 6.1 스트림이란? 6.2 스트림 프로세싱이란? 6.3 스트리밍 데이터 프로세싱 패턴 6.4 확장성 및 성능 최적화 패턴 6.5 신뢰성 패턴 6.6 사용 기술들 6.7 테스팅 6.8 보안 6.9 관측 가능성 및 모니터링 6.10 데브옵스 6.11 마치며 CHAPTER 7 API 관리 및 사용 패턴 7.1 API 관리 패턴 7.2 API 사용 패턴 7.3 마치며 CHAPTER 8 클라우드 네이티브 패턴 적용하기 8.1 온라인 쇼핑몰 시스템 만들기 8.2 고수준 아키텍처 만들기 8.3 외부 API 만들기 8.4 서비스 연결 8.5 데이터 관리 8.6 이벤트 주도 아키텍처 8.7 스트림 프로세싱 8.8 클라우드 환경에서 동적 관리 기능 구현 8.9 마치며 |
우리가 실제 서비스를 개발할 때 (특히 클라우드 환경) 어떤 기술 스택이 필요하고 DB는 NoSQL이 좋은 지 관계형 데이터베이스가 좋은 지, 혹은 여러 시스템 간에 데이터를 주고받을 때 어떤 프로토콜이 효율적인지 직접 경험해 보지 않으면 쉽게 해답을 찾을 수 없습니다. (책 후반부에 소개된 온라인 쇼핑몰 시스템 개발과 같은 경우)
예시) 온라인 쇼핑몰 시스템 개발
1. 주문 서비스는 RESTful API 형태로 서비스 제공
2. 고객 서비스는 GraphQL 사용
3. 주문 서비스는 REST/HTTP와 같은 동기식 프로토콜 통해 메시지 전달
4. 주문 요청은 AMQP를 통해 RabbitMQ로 비동기식으로 전달
5. 외부 시스템 간의 통신은 gRPC와 같은 고성능 동기식 메시징 기술 사용
6. 상품과 관련된 DB 구성은 아래 이미지 참조
이 책에는 위와 같은 우리들의 공통된 고민을 해소하기 위한 클라우드 환경에서의 애플리케이션 구성과 방법론을 몇 가지의 정형화된 디자인 패턴으로 묶어서 제시하고 있습니다.
즉, 책 제목이 모든 것을 말해주듯이 클라우드 네이티브 애플리케이션 개발에 필요한 기술 스택과 설계 패턴을 설명한 책입니다.
저는 AWS 같은 클라우드 인프라, 도커 같은 컨테이너 기반 시스템 그리고 분산 애플리케이션 구성을 위한 gRPC등에 관심을 가졌다가 자연스럽게 마이크로서비스와 클라우드 네이티브 애플리케이션이라는 것을 알게 되었습니다.
현업에서 관련 기술 스택이나 아키텍처를 협업자들과 공유하거나 실무 적용 시 참고하기 위해 한번은 꼼꼼하게 정리할 필요성을 느끼게 되었습니다.
애플리케이션의 구조나 개발에서 배포까지의 라이프 사이클을 도식 등으로 정리하는 것은 쉬운 일은 아닌데, 감사하게도 이 책에 제가 필요했던 클라우드 네이티브 애플리케이션 개발을 위한 기술 스택이 디자인 패턴이라는 이름으로 잘 정리가 되어 있습니다.
<강조: 독자의 이해력을 높이기 위해 책 곳곳에 삽입된 아키텍처 구성도나 서비스 흐름도만으로도 이 책은 소장할 가치가 충분합니다!>
이 책의 핵심인 디자인 패턴은 크게 7가지의 클라우드 네이티브 애플리케이션 개발 패턴으로 나누어져 있습니다.
각 패턴마다 개요, 동작 방식, 사용 방법, 관련된 패턴 소개, 해당 패턴 적용 시 고려해야할 사항들이 상세히 설명되어 있습니다.
패턴 속 여러 용어들이 조금 낯설기는 하지만 도입부의 개요 설명을 꼼곰히 읽어 보면 우리가 대부분 한번은 들어보고 직접 개발도 해본 방법론(예. RPC, 큐, API등)이라서 크게 어렵지는 않습니다.
저자의 오랜 경험에서 축적된 노하우도 책의 곳곳에 적혀 있는데, 예들 들어 동기 메시징 패턴을 사용하면 안되는 경우를 표로 잘 정리해 놓아서 실제 해당 패턴을 적용할 때 유용한 참고사항이 됩니다.
책에는 단일 기술에 대한 언급만 있는 것이 아니 라서 마이크로서비스, 컨테이너, RPC, NoSQL 등에 지식이 있으면 이해하는데 큰 도움이 됩니다.
책의 마지막에는 앞에서 설명한 클라우드 네이티브 애플리케이션 개발에 사용할 다양한 패턴을 어떻게 활용할 수 있는지 온라인 쇼핑몰 시스템을 통해 살펴볼 수 있습니다.
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."