컬리의 OMS, MSA 기반 아키텍처로 개발 효율 UP!

by DD
1년 전
조회수 10

OMS마이크로서비스 아키텍처(MSA)를 통해 판매처 주문 정보를 관리하며, shared cache를 활용하여 성능을 개선함

MSA 분리 기준을 기능, 역할, 관리 비용에 초점을 맞춰 도메인별로 분리하고, shared cache를 통해 트래픽을 관리함

상시 배포PR 리뷰 간소화를 통해 개발 생산성을 향상시키고, 라이브러리 버전 관리 효율성을 높임

Shared Cache의 핵심 원리

Shared Cache는 OMS MSA에서 데이터 접근 속도를 향상시키는 핵심 요소이다. 캐시 히트율을 높여 API 서버 부하를 줄이고, auto scale out 룰을 보수적으로 설정하여 장애에 대비한다. 따라서, 캐시 클러스터 장애 발생 시에도 서비스 안정성을 유지한다.

MSA 분리 기준: 도메인 중심 설계

OMS는 기능, 역할, 관리 비용을 고려하여 MSA를 분리한다. 주문 관리(order) 도메인 내 상품 정보 매핑 외 기능 부재 시, 상품 정보 도메인 분리를 보류한다. 데이터 소유권을 명확히 하고, shared cache를 활용하여 MSA 간의 결합도를 낮춘다.

개발 문화 변화: 상시 배포와 효율적인 리뷰

OMS팀은 상시 배포를 통해 개발 주기를 단축하고, PR 리뷰 간소화로 개발 효율을 높인다. 라이브러리 버전 관리를 통해 장애 전파 영향을 최소화하고, 카나리 배포를 통해 안정성을 확보한다. 결과적으로, 개발 생산성 향상서비스 안정성 확보를 동시에 달성한다.

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

댓글 0

첫 번째 댓글을 남겨보세요!