먼저 이 질문부터 풀어야 한다

MSA를 설명하는 책이라면 처음부터 여러 서비스가 나뉜 구조를 보여 주는 편이 더 그럴듯해 보일 수도 있다.

하지만 그렇게 시작하면 독자는 결과는 보게 되어도, 왜 그런 구조가 필요해졌는지는 놓치기 쉽다.

이 책이 chap00을 모놀리식으로 시작하는 이유는 바로 그 지점을 분명히 하기 위해서다.

복잡한 구조는 비교 기준이 있을 때 비로소 의미가 보인다.

그리고 그 비교 기준이 바로 하나의 애플리케이션으로 묶인 단순한 출발점이다.

처음에는 단순한 구조가 더 많은 것을 보여 준다

chap00에서는 회원, 상품, 주문, 배송이 하나의 Spring Boot 애플리케이션 안에 들어 있다.

애플리케이션도 하나고, 데이터베이스도 하나고, 요청을 처리하는 흐름도 하나의 프로세스 안에서 이어진다.

이 단순함 덕분에 독자는 먼저 비즈니스 흐름 자체를 볼 수 있다.

즉, 첫 장에서는 구조를 나누기 전에 먼저 문제 자체를 분명히 본다.

기준점이 있어야 구조 변화의 이유가 보인다

나중 장으로 갈수록 구조는 점점 커진다.

서비스가 분리되고, Gateway가 등장하고, Kubernetes 배포를 고민하고, Kafka와 Orchestrator를 통해 실패 처리까지 다루게 된다.

그런데 이 모든 변화는 “처음에는 하나로도 충분했던 구조”와 비교할 때 가장 잘 이해된다.

처음부터 분산 구조만 보면, 독자는 각 기술이 왜 등장했는지보다 이름과 형태만 외우게 되기 쉽다.