한눈에 보는 정의

MSA 6원칙은 하나의 거대한 시스템을 작은 서비스 단위로 나눠 설계할 때 지켜야 할 여섯 가지 핵심 원칙으로, 서비스 분리부터 장애 대응까지 설계 전반을 아우릅니다.

자세히 알아보기

  • 예문: "신규 시스템을 모놀리식에서 MSA로 전환하는 프로젝트는, MSA 6원칙을 기준으로 서비스를 어떻게 나눌지부터 정리하며 시작됐다."
  • ① 서비스를 통한 컴포넌트화: 코드를 라이브러리로 묶는 대신, 독립적으로 배포할 수 있는 서비스 단위로 기능을 쪼갭니다. ② 비즈니스 역량 중심 구성: 기술 계층(화면, 로직, DB)이 아니라 '주문', '결제'처럼 실제 업무 단위로 서비스를 나눕니다.
  • ③ 분산 거버넌스: 모든 서비스가 같은 언어·기술을 강제로 따르지 않고, 팀마다 가장 적합한 기술을 자율적으로 선택합니다. ④ 분산 데이터 관리: 서비스마다 자신의 데이터베이스를 따로 소유해, 한 서비스의 데이터 변경이 다른 서비스에 직접 영향을 주지 않게 합니다.
  • ⑤ 인프라 자동화: CI/CD(지속적 통합·배포) (CI/CD)와 Container(컨테이너) (컨테이너) 기반으로 배포와 테스트를 자동화해, 서비스 수가 늘어나도 운영 부담이 과도하게 커지지 않게 합니다. ⑥ 장애를 고려한 설계: 하나의 서비스에 장애가 생겨도 전체 시스템이 함께 멈추지 않도록, 장애 격리와 복구 체계를 처음부터 설계에 반영합니다.
  • 이 여섯 원칙은 마틴 파울러 등이 정리한 마이크로서비스의 특징에서 비롯됐으며, 서비스 간 통신은 API Gateway(API 게이트웨이) (API 게이트웨이)나 Service Mesh(서비스 메시) (서비스 메시) 같은 인프라로 뒷받침되는 경우가 많습니다.

관련 용어

최종 수정일: 2026년 10월 13일

← 용어사전 전체 목록으로