| MSA | 모놀리틱 | |
|---|---|---|
| 장점 | 모듈성이 크다( 작은 조각) | |
| 집중(응집)된 책임을 가진다. | ||
| 영속성 저장소의 격리성을 가진다. | ||
| 독립 확장이 가능하다. | ||
| 새로운 기술 도입이 용이하다. | 개발이 간단하다 | |
| 쉽게 변경 가능하다. | ||
| 테스트가 쉽다 | ||
| 배포가 쉽다 | ||
| 확장이 쉽다 | ||
| 단점 | 개발, 테스트, 배포의 어려움 | |
| 도입 시점 결정의 어려움 | ||
| 모듈 경계 구분의 어려움 | ||
| 서비스 배포 주기 조정의 어려움 | ||
| 기술의 높은 난이도 | 비대해지면 너무 복잡해 진다. | |
| 개발이 점점 더뎌진다. | ||
| 배포가 점점 오랜 시간이 걸린다. | ||
| 기술 스택 발전이 어렵다 | ||
| 리소스 배분이 어렵다 |
마이크로서비스 아키텍처 패턴 종류 ( 각 패턴을 하기에 상세히 설명 )
서비스 분해 전략 ( 어플리케이션 패턴)
MSA이든 모놀리식 아키텍처이던지 간에 핵심은 여러 파트로의 분해와 파트 간의 관계에 있다.
업무와 지식을 분리하여 서로 어떻게 상호 작용하는지 밝히는 것이 순서이다.
계층화 아키텍처
육각형 아키텍처(Hexagonal Architecture)
계층화 아키텍처의 대안으로 여러 모듈로 구성된 외/내부 연동 모듈과 비즈니스 로직이 포함되어있다.
