
백엔드
29CM 에서 무신사머니 사용하기
두줄요약
29CM 주문서에 무신사머니를 외부 연동 방식으로 도입하며 안정성과 연속성을 우선해 설계했습니다. 점진적 기능 저하와 서킷 브레이커, 모니터링과 증설 전략으로 운영 안정성을 확보했습니다.
핵심 내용
- 29CM 주문서에 무신사머니 결제 수단을 외부 서비스 연동 방식으로 도입한 사례
- 비즈니스 연속성과 시스템 안정성을 위해 점진적 기능 저하, 전략 패턴, 서킷 브레이커를 적용
- 페이먼트 서비스 트래픽 증가에 대비해 파드 증설과 모니터링 체계를 함께 준비
문제 상황
- 주문서에서 필요한 회원·머니 정보 조회가 일부 실패해도 결제 흐름이 끊기지 않아야 하는 요구
- 인증 서비스와 결제 서비스가 하나의 서킷 브레이커로 묶일 경우 정상 기능까지 함께 차단되는 위험
- 외부 API 호출 증가로 페이먼트 서비스의 운영 부담이 커질 가능성
해결 방법
- 필수 정보와 선택 정보를 나눠 일부 조회 실패 시에도 결제를 유지하는 graceful degradation 적용
- 회원 타입별 전략 분리로 가입, 미가입, 조회 불가 케이스를 독립적으로 처리
- 외부 장애 전파 차단을 위해 서킷 브레이커를 서비스별로 분리하고 슬랙·그라파나로 모니터링
성능/운영 포인트
- 실패율, 느린 호출 비율, 최소 호출 수 등을 기준으로 서킷 브레이커 임계값 조정
- 외부 API 처리 능력을 기준으로 파드 증설 규모 산정
- 초기에는 최소 증설 후 지표를 보며 추가 확장하는 운영 전략
적용해볼 점
- 외부 연동 기능은 구축보다 장애 격리와 폴백 설계를 먼저 고려
- 비즈니스 핵심 경로는 일부 정보 누락 시에도 가능한 범위에서 계속 동작하도록 설계
- 서비스별 장애 특성을 분리해 회로 차단과 모니터링을 세분화