[MSA] Pattern - API Composition
MSA : 분산된 DB 환경에서 join 을 도와주는 API 조합기에 대해 알아보자.
API 조합기
배경
- MSA 를 적용하면 Micro Service 마다의 Database 가 존재하게 된다.
- 이렇게 된 이상 분리된 여러 서비스들에게 join 쿼리를 직접적으로 호출할 수 없게 된다.
해결 방법
API Composer
를 통해 쿼리를 구현한다.API Composer
는data
를 소유하고 있는 서비스들을 호출하고, 결과에 대해in-memory join
을 수행한다.
- 그림 출처
API Gateway
가 종종API Composer
역할을 수행할 때도 있다.
장단점
장점
- 간단한 방법으로 MSA 환경에서 join 쿼리 를 수행할 수 있음.
단점
- 대용량 쿼리의 경우
in-memory join
으로 인한 성능 문제가 있을 수 있다.
댓글남기기