목록 보기
DDD와 MSA 기반으로 좋은 서비스 개발하기
아키텍처

DDD와 MSA 기반으로 좋은 서비스 개발하기

마켓컬리
마켓컬리
2021년 5월 10일

두줄요약

DDD의 느슨한 결합과 높은 응집 원칙으로 MSA의 도메인 경계를 설명했습니다. 독립 배포와 기술 다양성의 이점, 과도한 분리·다양성의 주의점을 정리했습니다.

구조와 흐름

  • 비즈니스 문제를 기준으로 서비스 도메인 분할
  • 도메인 내부의 높은 응집과 도메인 간 느슨한 결합
  • 도메인 내부 API 기반 동기 호출·공유 DB 가능성과 도메인 외부 메시지 기반 비동기 통신·DB 분리

선택 이유

  • 변경 범위를 특정 도메인 내 마이크로서비스로 제한하는 명확한 모듈 경계
  • 의존성 분리를 통한 마이크로서비스별 독립 배포
  • 도메인별 문제 해결에 적합한 기술 스택 선택 여지

트레이드오프

  • 도메인 경계 오류 시 인터페이스 결합 또는 서비스 분산에 따른 시스템 복잡도 증가
  • 과도한 기술 다양성에 따른 복잡성·비효율
  • 기술 다양성 확대 시 도메인 간 연동 인터페이스 설계 부담

적용해볼 점

  • 서비스 세분화 이전에 함께 묶을 서비스와 분리할 서비스의 도메인 경계 검토
  • 조직 성숙도를 고려한 기술 다양성 수준 조절
  • 배포 단위와 도메인 간 통신 방식을 함께 고려한 MSA 설계

컬리 계열사 채용12건

채용 사이트에서 전체 보기

다음 읽기

#DDD 주제를 이어서 읽기

DDD와 MSA 기반으로 좋은 서비스 개발하기

DDD의 느슨한 결합과 높은 응집 원칙으로 MSA의 도메인 분리 기준을 설명했습니다.\n명확한 경계가 독립 배포와 기술 선택을 돕지만 복잡성 관리도 필요합니다.

마켓컬리
마켓컬리
아키텍처

댓글 0개

댓글을 작성하려면 로그인이 필요합니다.

댓글을 불러오는 중...