
백엔드
신규 재고 시스템 구축을 위한 개발 여정
두줄요약
신규 재고 시스템을 구축하며 Oracle DB 집중 트래픽, 동시성, 연동 안정성 문제를 해결한 과정을 소개했습니다. 분산 락, Kafka, Reactive Programming, CircuitBreaker와 모니터링 적용 사례를 정리했습니다.
문제 상황
- Oracle DB에 재고 관련 트래픽이 집중되며 부하가 발생하는 상황
- 온라인몰에서 매장 재고를 실시간 조회할 때 트래픽 이슈가 빈번한 문제
- 레거시 재고 프로세스가 복잡해 신규 아키텍처 전환이 필요한 상태
해결 방법
- 오프라인 매장 재고를 1차 구축 대상으로 정하고 신규 재고 시스템을 설계
- Redisson 분산 락과 AOP, 트랜잭션으로 동시성 제어 구성
- POS 재고 이벤트를 Kafka MSK로 직접 연동하고 비동기 Batch 전송으로 Producer 부하 완화
성능/운영 포인트
- Reactive Programming으로 다량 재고 조회 API의 성능 개선 검토
- MemoryDB 장애 시 기존 DB로 전환하는 CircuitBreaker로 안정성 확보
- DataDog과 슬랙 알림으로 연동 처리, API 지표, 오류 상태를 모니터링
