목록 보기
똑닥 멤버십과 MongoDB 트랜잭션 충돌 방지 방법
백엔드

똑닥 멤버십과 MongoDB 트랜잭션 충돌 방지 방법

비브로스
비브로스
2024년 12월 18일

두줄요약

똑닥의 유료 멤버십 전환 과정에서 MongoDB 트랜잭션과 Write Conflict 대응 사례를 정리했습니다. 공통 키 기반 Lock과 모니터링으로 이중 결제를 방지한 방법을 소개했습니다.

핵심 내용

  • 똑닥 유료 멤버십 전환 과정에서 정기 결제의 데이터 일관성을 위해 MongoDB 트랜잭션을 도입한 사례
  • 운영 중 Write Conflict로 이중 결제가 발생해, 트랜잭션 충돌 가능성을 고려한 설계 필요성을 확인
  • 동일 사용자 업데이트 경로에 공통 키 기반 Lock을 적용하고, 결제 이상 모니터링을 구축해 재발을 방지

주의할 점

  • 동일 문서 갱신이 겹치는 API와 이벤트의 동시 실행 가능성
  • 트랜잭션의 격리성만으로는 병렬 충돌을 완전히 막기 어려움
  • 해지, 재결제, 결제수단 변경처럼 상태 변화가 많은 흐름의 타이밍 이슈

적용해볼 점

  • 사용자 단위 공통 Lock으로 결제 관련 업데이트 직렬화
  • 트랜잭션 충돌 지점 사전 점검과 재시도 흐름 관리
  • 중복 결제 즉시 감지를 위한 이상 모니터링 체계 마련

다음 읽기

#MongoDB 주제를 이어서 읽기

똑닥 멤버십과 MongoDB 트랜잭션 충돌 방지 방법

MongoDB 트랜잭션 도입 과정에서 멤버십 결제와 해지 로직이 충돌하며 이중 결제가 발생했습니다. 공통 키 기반 Lock과 모니터링으로 동시 접근을 제어해 문제를 줄였습니다.

비브로스
비브로스
백엔드

댓글 0개

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

댓글을 불러오는 중...