Spring
MSA
마이크로 서비스 이론

MSA(마이크로 서비스)의 핵심원칙

마틴 파울러 (Martin Fowler)가 정의한 MSA 특징

Organized around Business Capabilities

  • Conway's Law : 시스템이 설계되면, 그 시스템의 구조는 설계한 조직이 구조와 유사해진다.
  • Business Capabilities : 조직이 얼마나 빠르고 유연하게 변화에 대응할 수 있는지에 대한 능력.

최근에는 기능 조직보다 목적 조직이 많아졌습니다.
기능 조직이란 회사에서 기능을 담당하는 조직으로, 특별한 목적성을 가지지 않는 조직을 뜻합니다. 반면 목적 조직이란 특정 목적을 가진 사내 조직으로서, 명확한 미션과 비전을 가지고 팀의 모든 의사결정이 진행되는 조직을 뜻합니다.
mission과 vision에 대해 설명을 해보자면 mission삶의 방향을 정하는 거시적인 목표이고 visionmission을 달성하기 위한 구체적인 목표를 뜻합니다.
예시를 들어서 Tesla의 미션과 비전에 대해서 설명을 해보겠습니다. Tesla의 mission지속 가능한 에너지로의 세계적 전환 입니다. Tesla의 구체적인 vision전 세계 전기자동차 전환을 주도하여 21세기 가장 매력적인 자동차 회사가 vision이 됩니다.

Product, Not Project

Project는 1회성, SI 회사를 떠올리면 되는데 하나의 프로젝트가 끝나면 지속적인 유지보수가 이루어지지 않는 것Project라고 gㅏㅂ니다.
결국 메인테이너가 Product를 관리하면서 User의 요구사항에 빠르게 대응한다면 Business Capabilities와도 깊이 연결됩니다.

Design for Failure

**시스템은 언제든지 문제가 생길 수 있다.**는 것을 인정하는 설계 디자인 입니다.

Evolutionary Design

비즈니스에 따라 빠른 출시와 지속적인 피드백을 가능하게 하는 설계, 개발

MSA의 단점

  • 서비스간 통신이 어렵다.
  • 트랜잭션 통제가 어렵다.
  • 모니터링이 어렵다.

Reference