
백엔드
AI와 함께 OMS의 Writer connection을 15.9% 줄인 방법
두줄요약
OMS 주문 흐름의 책임을 분리하고 반복 조회를 줄여 Writer connection과 slow query를 개선했습니다. 사람이 검수할 수 있는 작은 변경을 반복하며 안전하게 성능과 구조를 함께 다듬었습니다.
문제 상황
- OMS 주문 생성 흐름에 조회, 검증, 저장, 재고 반영, 외부 연동, 후처리 책임이 한곳에 집중
- 상품, 회원, 혜택, 배송, 구독, 재고 등 여러 도메인 정보의 반복 조회로 Writer DB 부담 증가
- 변경 범위가 넓어 정책 수정 시 회귀 위험과 테스트 범위가 커지는 구조
원인 분석
- 서로 다른 이유로 바뀌는 로직이 같은 클래스에 묶인 구조
- 주문 흐름에서 구체 구현과 조회 방식까지 직접 알아야 하는 강한 결합
- 반복 호출과 동시 실행이 많은 조회 경로에서 불필요한 connection 점유와 slow query 발생
해결 방법
- SRP, OCP, DIP 중심으로 조회 컨텍스트, 정책 검증, 저장, 후처리 분리
- 반복 조회를 컨텍스트 재사용, 배치 쿼리, Reader 전환, 캐시, single-flight로 축소
- 사람이 한 번에 검수할 수 있는 작은 PR 단위로 나누고 배포 후 지표로 검증
