더북(TheBook)

2.3 마치며

아키텍처는 애플리케이션 개발 속도에 직접 영향을 주는 갖가지 ‘~성(-ilities)’을 좌우합니다(예: 관리성, 테스트성, 배포성).

마이크로서비스 아키텍처는 애플리케이션의 관리성, 테스트성, 배포성을 높이는 아키텍처 스타일입니다.

마이크로서비스는 기술적 관심사보다 비즈니스 능력, 하위 도메인 등 비즈니스 관심사 위주로 구성됩니다.

서비스를 분해하는 패턴은 크게 두 가지입니다.

◼︎ 비즈니스 능력에 따른 분해: 비즈니스 아키텍처 기반

◼︎ 하위 도메인에 따른 분해: DDD 개념 기반

DDD를 적용하고 서비스마다 도메인 모델을 따로 설계하면, 의존 관계가 뒤엉켜 분해를 가로막는 만능 클래스를 제거할 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.