MSA(Microservice Architecture)의 Inner/Outer Architecture 구조는 엔터프라이즈급 MSA 설계 시 복잡한 마이크로서비스 간의 의존성과 역할을 정리하고, **서비스 경계(Boundary)**와 **기능 분리(Modularity)**를 명확하게 하기 위해 도입된 개념입니다.
직무역량 평가 및 실무 설계 기준으로 아래와 같이 정리드립니다.
🧭 MSA 아키텍처의 Inner / Outer 구조
✅ 1. 개요 요약
| Inner Architecture | 비즈니스 로직에 집중된 도메인 중심 서비스 계층 |
| Outer Architecture | 외부 접점을 담당하는 게이트웨이, 인증, 메시징, 로깅 등 인프라성 기능 계층 |
→ MSA 환경에서 Inner는 코어 서비스, Outer는 공통 지원 인프라 계층으로 구성
🧱 2. 구조도 예시
🔍 3. 구성 요소 상세 설명
🔹 Outer Architecture (외부 구조)
인프라, 플랫폼 기반 계층
- API Gateway: 진입점 제어, 라우팅, 인증 위임
- 인증/인가 시스템 (SSO, OAuth): 서비스 접근 제어
- Service Registry / Discovery: 서비스 위치 탐색
- 메시지 브로커 (Kafka, RabbitMQ): 비동기 메시징 지원
- 로깅 / 모니터링: ELK, Prometheus, Grafana 등
- CI/CD 및 배포 관리: ArgoCD, Jenkins, Helm 등
Outer는 공통 인프라로서 모든 도메인 서비스와 간접적으로 연결됨
🔹 Inner Architecture (내부 구조)
도메인 중심의 핵심 비즈니스 서비스
- 각 서비스는 DDD(Domain-Driven Design) 기반으로 설계
- 비즈니스 단위로 분리되어 있으며 자율성과 독립성 보장
- DB, Cache, 내부 상태를 서비스 단위로 소유
- 예: 주문(Order), 결제(Payment), 재고(Inventory), 회원(User) 등
Inner는 도메인 로직 처리와 데이터 소유를 책임지는 코어 레이어
🎯 4. Inner/Outer 분리의 이점
| 관심사 분리 | 비즈니스 로직과 인프라 기능의 명확한 분리 |
| 확장성 | Outer 기능을 공통화하여 각 서비스의 중복 제거 |
| 유지보수성 향상 | Inner는 오직 도메인 로직에 집중 가능 |
| 보안 강화 | 인증/인가, 외부 통신을 Outer에서 통제 |
📝 5. 직무역량 평가용 예시 문제
문제 [상]
다음 중 MSA 아키텍처에서 Inner/Outer 구조를 적절히 설명한 것은?
A. Inner는 메시징 브로커를 포함하며 Outer는 회원 도메인 로직을 포함한다
B. Inner는 각 도메인 서비스의 비즈니스 로직이며 Outer는 공통 인프라 기능이다
C. Outer는 Product/Order/Delivery 서비스를 포함한다
D. Inner는 CI/CD 파이프라인, Outer는 API Gateway를 담당한다
정답: B
해설: Inner는 도메인 중심, Outer는 인증, 메시징, 모니터링 등 공통 인프라 계층이다.
🧠 암기카드 요약
| Inner Architecture | 도메인 중심 서비스 계층 (비즈니스 로직, DB 포함) |
| Outer Architecture | API Gateway, 인증, 메시징 등 공통 인프라 계층 |
| 관심사 분리 | 인프라와 도메인을 명확히 구분 |
| API Gateway | Outer에 위치, 인증/라우팅 담당 |
| 서비스 디스커버리 | Outer에서 Inner 연결을 동적으로 수행 |
📌 실전 설계 팁 (TA/아키텍처 평가 대비)
- MSA 도입 시 반드시 Inner/Outer 구조로 나누고 설계 의도를 문서화
- Outer 기능은 독립적으로 장애 분석 및 이중화 설계 필요 (Ex. Redis, Kafka)
- Inner 간 동기 → 비동기 전환 시 Outer 구성 요소(Kafka 등) 적극 활용
Inner/Outer 구조는 특히 **클라우드 네이티브 환경(Kubernetes, Service Mesh, API Gateway 등)**에서 더 명확히 구분되며, 장애 대응, 확장성, 이중화 측면에서 핵심 개념입니다.
'서버 시스템 > 서버 아키텍처' 카테고리의 다른 글
| Disaster Recovery (DR) 설계 (0) | 2025.09.02 |
|---|---|
| 멀티 존(Multi-Zone) / 멀티 리전(Multi-Region) 고가용성 설계 (0) | 2025.09.02 |
| Kubernetes 기반 서버 인프라 구성 (0) | 2025.09.02 |
| 서버 아키텍처 기본 개념 #2 (0) | 2025.09.01 |