2.1.3 마이크로서비스 아키텍처는 일종의 아키텍처 스타일이다
4+1 뷰 모델과 아키텍처 스타일 이야기를 했는데, 이제 모놀리식/마이크로서비스 아키텍처를 정의할 차례입니다. 먼저 모놀리식 아키텍처는 구현 뷰를 단일 컴포넌트(하나의 실행 파일이나 WAR 파일)로 구성한 아키텍처 스타일입니다. 다른 뷰는 일체 등장하지 않습니다. 모놀리식 애플리케이션은 육각형 아키텍처 방식으로 구성한 논리 뷰를 가질 수 있습니다.
Note≡ 패턴: 모놀리식 아키텍처
애플리케이션을 실행/배포 가능한 단일 컴포넌트로 구성한다.9
마이크로서비스 아키텍처도 일종의 아키텍처 스타일입니다. 하지만 구현 뷰를 다수의 컴포넌트(여러 실행 파일이나 WAR 파일)로 구성하는 차이점이 있습니다. 여기서 컴포넌트는 곧 서비스고, 각 서비스는 자체 논리 뷰 아키텍처를 갖고 있습니다. 전형적인 육각형 아키텍처죠. 커넥터는 이런 서비스가 서로 협동할 수 있게 해주는 통신 프로토콜입니다. 그림 2-3은 FTGO 애플리케이션에 적용해 봄직한 마이크로서비스 아키텍처입니다. 여기서 서비스는 각각 주문 관리, 음식점 관리 같은 비즈니스 능력에 해당합니다.
Note≡ 패턴: 마이크로서비스 아키텍처
애플리케이션을 느슨하게 결합된, 독립적으로 배포 가능한 여러 서비스로 구성한다.10