DDD와 MSA 기반으로 좋은 서비스 개발하기
조문옥 컬리 · 컬리 기술 블로그
AI 핵심 요약
컬리의 커머스 플랫폼을 MSA로 전환하는 과정에서 좋은 서비스 개발의 출발점은 비즈니스 문제를 반영해 도메인을 올바르게 나누는 것이라고 설명합니다. DDD의 느슨한 결합과 높은 응집 원칙에 따라 도메인 내부 서비스는 동기 API 호출이나 데이터 공유를 허용하고, 도메인 간에는 비동기 메시지 통신과 데이터베이스 분리를 적용할 수 있습니다. 이런 경계는 변경 범위를 명확히 하고 독립 배포를 돕는 한편, 도메인별 기술 선택의 자율성도 높입니다. 다만 도메인을 지나치게 잘게 나누거나 기술을 과도하게 다양화하면 복잡성이 커지므로, 응집도와 조직의 성숙도를 함께 고려해야 합니다.
- 도메인은 비즈니스 문제를 기준으로 나누고, 분리뿐 아니라 관련 기능을 함께 묶는 응집도도 고려하세요.
- 도메인 내부 서비스는 동기 API 호출이나 데이터 공유가 가능하지만, 도메인 간에는 비동기 메시지 통신과 데이터베이스 분리를 지향합니다.
- 명확한 서비스 경계는 변경 범위를 줄이고 독립 배포를 가능하게 하는 기반입니다.
- 기술 다양성은 서비스별 문제 해결에 유리하지만, 조직의 성숙도와 연동 인터페이스의 복잡성을 함께 고려해야 합니다.
소개
컬리의 서비스 개발 원칙
비슷한 학습 자료
컨퍼런스 if kakao
ㄷㄷㄷ: Domain Driven Design과 적용 사례공유 / if(kakao)2022
컨퍼런스 if kakao
Legacy Server의 포팅을 위해 Domain Driven Design을 적용하여 MSA 화 한 사례를 공유합니다. #MSA #DDD 카카오 엔터테인먼트에서 백엔드 개발자로 일하고 있는 셜록입니다. git blame을 열면 혹시나 제가 짠 코드일까 두근두근하면서, 레거시 서버로 고통받았던 나날과 함께 backlog를 열심히 청소하는 중입니다. 발표자료 보기 👉https://speakerdeck.com/kakao/ifkakao22-37 if(kakao)2022에 대한 자세한 정보는 👉 https://if.kakao.com if(kakao)2022에 대한 문의는 👉 if@kakaocorp.com #카카오 #이프카카오 #개발자컨퍼런스 #기술 #개발 #ifkakao2022
백엔드
문서 정명성
컬리에서 선물하기를 개발하며 회고
문서 sangseok.lim
마켓컬리 서비스 구조를 소개 합니다
문서 이민식