
백엔드
주문이 출고되기까지의 과정 (1)
두줄요약
부스터스의 주문 수집부터 WMS 출고까지의 내부 플로우와 구축 배경을 정리한 글입니다. 주소 잘림과 중복 실행 이슈, 그리고 격리 수준을 활용한 정합성 방어를 다뤘습니다.
문제 상황
- 주문 수집, 표준화, 매칭, WMS 전송, 출고가 유기적으로 연결된 부스터스 출고 프로세스 구축 배경
- 외부 WMS 변경이 잦아 업무 플로우 재적응이 반복되며 비효율 발생
구조와 흐름
- 다양한 채널 주문과 B2B, 샘플, 공동구매 주문을 OMS, API, 엑셀, ERP로 수집 후 표준화
- 부스타에서 주문 매칭 정보를 관리해 딜명 차이를 보정하고 WMS 전송 준비
- WMS에서 재고 할당, 피킹 지시, 실제 출고 수행
주의할 점
- 주소 컬럼 100byte 제한으로 상세 주소가 잘려 배송 실패 발생
- 중복 프로세스 실행으로 동일 주문이 여러 번 출고되는 사례 발생
- 고객과 직접 연결되는 WMS 구간에서 데이터 정합성, 무결성 관리 필요
적용해볼 점
- 주소 컬럼 길이 확장과 재할당으로 누락 데이터 복구
- 실행 중 플래그로 중복 프로세스 방지 로직 추가
- MySQL REPEATABLE READ와 MVCC, 갭 락으로 중복 전송 방어
