# 250620-아키텍처-시각화
소프트웨어 시스템이 복잡해질수록 아키텍처를 이해하는 것이 점점 어려워진다. 마인드맵은 계층 구조와 의존 관계를 동시에 표현하고, 확장과 수정이 자유로우며, 비개발자와의 소통 도구로도 효과적이다.
## 모놀리식 vs 마이크로서비스 비교
두 아키텍처를 같은 캔버스에 나란히 배치하면 특징과 차이점이 직관적으로 드러난다.
- **모놀리식**: 모든 가지가 하나의 뿌리에서 시작. 장점: 배포 단순, 디버깅 용이. 단점: 규모 확장 어려움, 부분 장애가 전체 장애로
- **마이크로서비스**: 각 가지가 독립적인 서비스. 장점: 독립 배포, 기술 스택 다변화, 장애 격리. 단점: 운영 복잡도 증가
## API 의존 관계 시각화
- 각 서비스를 노드로 만들고 호출 방향을 가지로 표시
- 노드 텍스트에 API 엔드포인트를 포함: "주문 서비스 → 재고 서비스 (GET /check)"
- 마커로 호출 유형 구분: ✅ 동기, ⭐ 비동기
## 데이터 흐름 마인드맵
1단계 가지를 데이터 이동 경로로 구성:
- 입력 소스 → 수신 계층 → 비즈니스 로직 → 데이터 저장 → 출력 채널
병목 구간에 ❗ 마커를 달아 성능 개선 우선순위를 한눈에 확인한다.
## 인프라 맵: 계층별 정리
- 엣지 계층 (CDN, 로드 밸런서)
- 애플리케이션 계층 (컨테이너, 서비스 메시, API 게이트웨이)
- 데이터 계층 (DB, 캐시, 검색 엔진)
- 메시징 계층 (메시지 브로커, 이벤트 버스)
- 관측 계층 (로그, 메트릭, 트레이싱, 알림)
## 팀 온보딩에 활용
1. 시스템 개요 마인드맵 제공 (첫날)
2. 서비스별 상세 마인드맵 제공
3. 인프라 마인드맵 제공
4. 온보딩 체크리스트를 ❗ 마커로 표시
5. 새 팀원이 ❓ 마커로 질문을 추가하면 시니어가 답변을 추가
→ [[pulmap-app/소개|PulMap.app 소개]] | [[pulmap-app/블로그|블로그 목록]]