29CM 에서 무신사머니 사용하기
백엔드
29CM 에서 무신사머니 사용하기
두줄요약
29CM 주문서에 무신사머니를 외부 서비스 연동으로 도입한 사례를 소개했습니다. 안정성과 연속성을 위해 폴백, 서킷 브레이커, 전략 패턴, 파드 증설을 적용했습니다.
핵심 내용
- 29CM 주문서에 무신사머니 결제수단을 외부 서비스 연동 형태로 도입한 사례
- 비즈니스 연속성과 시스템 안정성을 위해 점진적 기능 저하, 서킷 브레이커, 전략 패턴, 모니터링, 파드 증설을 함께 적용
- 외부 API 실패 시에도 주문 전환율을 최대한 유지하도록 필수/선택 정보를 구분하고 폴백 정책을 설계
구조와 흐름
- 주문서 API가 페이먼트 서비스, 유저 서비스, 무신사머니 서비스를 순차 호출해 필요한 정보를 조합
- 회원 타입을 가입, 미가입, 조회 불가로 나눠 런타임 전략 선택
- 인증 서비스와 결제 서비스를 서킷 브레이커 인스턴스로 분리해 장애 전파를 차단
선택 이유
- 결제 입력 부담 감소와 재구매 유도, 계열 서비스 간 고객 락인, 수수료 절감 목적
- 일시적 오류에는 graceful degradation, 장시간 장애에는 circuit breaker로 대응
- 트래픽 집중에 대비해 외부 API 처리 능력을 기준으로 파드 증설 규모 산정
주의할 점
- 미가입자라고 해도 첫 결제 이력이 남아 있을 수 있어 가정 기반 분기만으로 처리하면 안 됨
- 클라이언트 오류까지 서킷 브레이커에 포함하면 실제 장애 파악이 어려움
- 인증과 결제처럼 성격이 다른 API를 하나의 회로로 묶으면 정상 기능까지 차단될 수 있음