마이크로서비스 패턴 - 자바 예제로 배우는 서비스 분해, 트랜잭션 관리, CQRS, 테스트 핵심 패턴
크리스 리처드슨 지음, 이일웅 옮김 / 길벗 / 2020년 2월
평점 :
장바구니담기


이 글에는 스포일러가 포함되어 있습니다.


[한줄평]

모놀리식 애플리케이션에서 마이크로서비스로 전환하기에 딱 좋은 책이다.


[목차구성]

1장 모놀리식 지옥에서 벗어나라

2장 분해 전략

3장 프로세스 간 통신

4장 트랜잭션 관리: 사가

5장 비즈니스 로직 설계

6장 비즈니스 로직 개발: 이벤트 소싱

7장 마이크로서비스 쿼리 구현

8장 외부 API 패턴

9장 마이크로서비스 테스트 1부

10장 마이크로서비스 테스트 2부

11장 프로덕션 레디 서비스 개발

12장 마이크로서비스 배포

13장 마이크로서비스로 리팩터링


[이 책의 특징]

44가지 패턴으로 아키텍처 문제 해법과 노하우를 학습한다

아키텍처 구조를 잘 표현한 186개 도해로 이해한다

자바 예제를 직접 실행하며 익힌다


[대상 독자]

소프트웨어 개발자

아키텍처 및 CTO, VP 관리자


[서평]

이책은 총 13장으로 구성되어 있습니다.

1장은 모놀리식 애플리케이션이 모놀리식 아키텍처라는 옷이 맞지 않을 정도로 커졌을 때 나타나는 모놀리식 지옥의 징후와 이 지옥을 마이크로서비스 아키텍처를 도입해서 탈출하는 방안을 소개 합니다. 이장에서는 마이크로서비스 아키텍처 패턴 언어란 무엇인지 소개합니다.

2장은 소프트웨어 아키텍처의 중요성과 애플리케이션을 여러 서비스로 분해하는 패턴, 분해하는 과정에서 맞닥뜨리는 갖가지 장애를 극복하는 방법을 설명합니다.

3장은 마이크로서비스 아키텍처에서 견고한 서비스 간 통신을 하기 위해 필요한 패턴을 소개하고, 메시지 기반의 비동기 통신이 최적인 이유를 설명합니다.

4장은 사가 패턴을 이용하여 서비스 간 데이터 일관성을 유지하는 방법을 설명합니다.

5장은 도메인 주도 설계의 에그리거트 및 도메인 이벤트 패턴을 응용하여 서비스 비즈니스 로직을 어떻게 설계하는지 설명합니다.

6장은 5장에 이어 이벤트 소싱 패턴으로 비즈니스 로직을 개발하는 방법을 설명합니다.

7장은 API조합 패턴, 커맨드 쿼리 책임 분산(CQRS) 패턴을 이용하여 여러 서비스에 분산된 데이터 조회 쿼리를 구현하는 방법을 설명합니다.

8장은 모바일 앱, 브라우저에서 작동되는 자바스크립트 애플리케이션, 서드 파티 애플리케이션등 다양한 외부 클라이언트 요청을 외부 API 패턴으로 처리하는 방법을 소개 합니다.

9장은 마이크로서비스 아키텍처의 자동화 테스트 기법을 소개합니다.

10장은 9장에 이어 테스트 피라미드에 있는 다른 유형의 테스트의 작성 방법을 소개합니다.

11장은 보안,외부화 구성 패턴, 서비스 관측성 패턴등 프로덕션 레디 서비스 개발에 관한 여러 가지 주제를 이야기합니다.

12장은 가상 머신, 컨테이너, 서버리스등 서비스 배포시 사용 가능한 다양한 개발 패턴을 살펴봅니다.

13장은 스트랭글러 애플리케이션 패턴에 따라 모놀리식 아키텍처를 마이크로서비스 아키텍처로 단계적으로 리팩터링 하는 방법을 소개합니다.


이책은 모놀리식 애플리케이션 아키텍처로 개발된 서비스를 마이크로 서비스 아키텍처로 전환 하는데 여러 가지 패턴으로 소개를 하고 있다. 새로운 아키텍처의 개념을 소개하는 것뿐만 아니라 모놀리식 사고에서 마이크로서비스의 패러다임 전환이 필요하다는걸 알려준다. 이책에서는 온라인 음식 배달 서비스라는 모놀리식 애플리케이션을 마이크로서비스 아키텍처로 단계별로 전환하면서 서비스 분해, 트랜잭션, CQRS, 테스트까지 핵심 패턴을 자세하게 설명하고 있다. 그리고 단순히 패턴에 대한 설명을 하는것이 아니라 저자가 경험한 문제 해결 방법과 노하우도 함께 실무에서만 알수 있는 조언을 배울수 있다. 아직 모놀리식 지옥에서 인생 낭비 하지 말고 마이크로서비스 도입을 한번 깊게 고민하는 개발자, 아키텍처, 관리자분들에게 추천합니다.


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