devmoa

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

컬리·2021년 5월 10일·00
DDDMSALoose CouplingHigh Cohesion도메인서비스 개발 원칙

AI 요약

Beta

컬리는 커머스 플랫폼 전반을 MSA와 DDD 기반으로 전환하며 서비스 개발 원칙을 수립하고 있습니다. DDD(Domain-Driven Development)는 에릭 에반스가 소개한 개발 방법론으로, "훌륭한 소프트웨어를 개발하고 싶다면 서비스 도메인에 귀를 기울여라"는 슬로건을 가지고 있습니다.

현대 시스템 아키텍처의 주류인 MSA는 DDD의 핵심 개념인 Loose Coupling(느슨한 결합)과 High Cohesion(높은 응집)으로부터 파생되었습니다. 핵심은 도메인들 간에는 Loose Coupling하고, 도메인 내에서는 High Cohesion 해야 한다는 것입니다.

즉, 도메인을 잘게 나누는 것뿐만 아니라, 어떤 서비스들을 하나의 도메인으로 잘 묶어 High Cohesion하게 할지 설계하는 것이 DDD와 MSA의 중요한 지향점입니다. 비즈니스 문제를 잘 투영한 서비스 도메인을 Loose Coupling과 High Cohesion 관점에서 잘 나누는 것이 좋은 서비스 시스템 개발의 기본 원칙입니다.

이 글이 궁금하신가요?

원문 블로그에서 전체 내용을 확인해 보세요

원문 읽으러 가기

AI 추천 연관 게시글

이 글과 관련된 다른 기술 블로그 글을 AI가 추천합니다