T
TechInsights
목록으로
Architecture•2021. 08. 04.

카트 개발 연대기

컬리
컬리 Engineering Team
카트 개발 연대기

핵심요약

원문 보기

컬리의 카트 시스템이 모놀리식 구조의 한계를 극복하고 마이크로서비스 아키텍처로 진화하며, 성능 최적화와 기능 확장을 성공적으로 이뤄낸 과정을 상세히 다룹니다.

컬리 카트 시스템의 진화 여정

초기 카트 시스템의 한계와 발전 필요성

  • 초기 모놀리식 아키텍처는 기능 확장에 한계가 있었습니다.
  • 사용자 증가에 따른 성능 저하 및 병목 현상이 발생했습니다.
  • 다양한 프로모션 및 배송 옵션 통합의 어려움이 있었습니다.

마이크로서비스 기반 카트 아키텍처 전환

  • Cart Service를 중심으로 상품, 재고, 프로모션 서비스와 API 연동을 구현했습니다.
  • Kafka를 활용한 이벤트 기반 아키텍처로 서비스 간 비동기 통신을 강화했습니다.
  • Redis Cache를 도입하여 장바구니 조회 성능을 최적화하고 DB 부하를 경감시켰습니다.
  • MSA 패턴 적용으로 각 서비스의 독립적인 배포 및 확장성을 확보했습니다.

기능 확장 및 안정성 확보 전략

  • 분산 트랜잭션 관리를 위해 Saga 패턴 또는 2PC 적용을 검토했습니다.
  • 서킷 브레이커 패턴을 도입하여 외부 서비스 장애 시 장애 전파 방지를 구현했습니다.
  • CI/CD 파이프라인을 통해 신속한 기능 배포 및 안정적인 운영을 지원했습니다.
#Architecture#BackEnd
컬리
컬리

컬리 Engineering Team

기술 인사이트를 전달하는 공식 채널

You might also like

View all
풀필먼트 입고 서비스팀에서 분산락을 사용하는 방법 - Spring Redisson

풀필먼트 입고 서비스팀에서 분산락을 사용하는 방법 - Spring Redisson

Redis Vs Mongo DB By Item View Count (이 상품 몇명이 보고 있어요)

Redis Vs Mongo DB By Item View Count (이 상품 몇명이 보고 있어요)