목록 보기
OMS의 최적화된 마이크로서비스 아키텍처 디자인
아키텍처

OMS의 최적화된 마이크로서비스 아키텍처 디자인

마켓컬리
마켓컬리
2025년 5월 8일

두줄요약

OMS를 판매처와 풀필먼트 사이의 주문 인터프리터로 설계한 과정을 소개했습니다.\nshared cache 중심 MSA로 트래픽을 줄이고 병렬 개발·상시 배포를 지원합니다.

문제 상황

  • 판매처별 주문 정보를 풀필먼트 이행용 데이터로 변환하고 배송 예정 정보를 API로 제공하는 OMS 역할
  • 다양한 판매처·풀필먼트 도메인 데이터의 결합과 안정적인 실시간 응답 요구

구조와 흐름

  • 기능·역할·관리비용 기준의 OMS 마이크로서비스 분리와 판매처 결합 최소화
  • 도메인 소유 서비스의 shared cache 쓰기와 다른 서비스의 읽기 전용 조회
  • 캐시 미스·타임아웃 시 원본 MSA 직접 호출, 외부 판매처 연동 서비스의 OMS 그룹 외부 분리

선택 이유

  • 최소 데이터 동기화와 OMS 자체 데이터 결합을 통한 이행 정보 재가공 서빙
  • 고트래픽 operation API의 캐시 중심 응답으로 내부 MSA 호출·네트워크 비용 감소
  • 독립 레포지토리·작은 배포 단위 기반의 병렬 개발, PR 리뷰 간소화, 카나리 배포

트레이드오프

  • 캐시 장애 시 내부 MSA로 트래픽 집중 가능성에 대비한 보수적 auto scale out 기준
  • 캐시 데이터 범용성·TTL·메모리 사용량 검토와 2개 캐시 클러스터 분리 운영
  • 모든 엔지니어의 전체 MSA 컨텍스트 유지와 중복 데이터 관리를 막기 위한 협업 부담

다음 읽기

#MSA 주제를 이어서 읽기

OMS의 최적화된 마이크로서비스 아키텍처 디자인

OMS를 판매처와 풀필먼트를 잇는 인터프리터로 보고, 최소 동기화와 재가공 서빙을 중심으로 마이크로서비스와 shared cache 구조를 설계했습니다. 이를 통해 작은 단위 개발과 상시 배포, 피크 트래픽 흡수를 가능하게 했지만, 팀 전체의 높은 컨텍스트 공유가 필요했습니다.

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

댓글 0개

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

댓글을 불러오는 중...