먼저 짚고 가기
이 책은 이미 대규모 분산 시스템을 운영해 본 숙련자를 위한 책이라기보다, MSA라는 말을 들으면 어느 정도는 알 것 같지만 실제 코드를 보면 어디서부터 읽어야 할지 막막한 개발자를 위한 책이다.
즉, 이 책의 중심 독자는 “개념은 조금 들었지만, 아직 구조를 자기 언어로 설명하기 어려운 사람”이다.
이런 독자에게 잘 맞는다
특히 이 책은 다음과 같은 독자에게 잘 맞는다.
- Spring Boot 기반의 백엔드 개발을 조금이라도 경험해 본 사람
- REST API, Controller, Service, Repository 정도의 전형적인 구조에는 익숙한 사람
- MSA를 처음 공부하거나, 개념은 들었지만 실제 프로젝트 흐름으로 연결해 본 적이 없는 사람
- 모놀리식에서 MSA로 왜 넘어가는지 이유부터 알고 싶은 사람
- Gateway, Kubernetes, Kafka, Saga, WebSocket 같은 기술이 각각 어떤 맥락에서 필요한지 이해하고 싶은 사람
이 책은 독자에게 완전히 아무 배경지식도 없다고 가정하지는 않는다.
기본적인 웹 애플리케이션 구조를 알고 있다면 흐름을 따라가는 데 큰 무리는 없도록 구성할 것이다.
이 정도 배경지식이면 충분하다
아래 정도의 배경지식이 있다면 이 책을 읽는 데 충분하다.
- HTTP 요청과 응답의 기본 개념
- Spring Boot 프로젝트 구조
- Controller, Service, Repository의 역할
- 기본적인 데이터베이스와 트랜잭션 개념
반대로, 아래 경험은 없어도 괜찮다.