스프링캠프 2025 [Track 2] 3. 올리브영 물류시스템 개선기 (김진배, 이정표)
- 올리브영은 1999년 신사 1호점을 시작으로 25년간 성장해 1370개 매장과 온라인몰, 820만 MAU, 1600만 멤버십을 확보한 플랫폼으로 발전했어요. 🚀
- 과거 물류 시스템은 여러 단계를 거쳐 데이터가 이동되어 지연이 발생했고, 이로 인해 입고 지연, 결품 발생, 배송 지연, 매출 감소 등의 문제가 있었어요. 🐌
- 문제 해결을 위해 배치 및 EAI 시스템을 제거하고 카프카 기반의 이벤트 드리븐 아키텍처로 변경하여 실시간 데이터 연동 및 데이터 신뢰도를 향상시켰어요. ⚡
- 카프카 도입 후 데이터 지연이 없어지면서 배송 지연 감소, 매출 향상, 고객 만족도 증가 등의 긍정적인 효과를 얻었어요. 😊
- 실패한 메시지를 놓치지 않기 위해 DLQ(Dead Letter Queue)를 구축하여 오류 발생 시 S3에 저장하고 슬랙 알림을 통해 개발자에게 즉시 알리도록 했어요. 🚨
- 배치에서 카프카로 전환하면서 운영의 어려움, 아키텍처 변경, 순서 보장, 중복 데이터 처리 등의 현실적인 고민이 있었지만, AWS MSK 사용, 점진적 전환, 키 기반 파티셔닝, 중복 방지 로직 구현 등을 통해 해결했어요. 🛠️
- 과거 새벽 시간 출고 처리 모니터링의 어려움을 해결하기 위해 출고 처리 99% 미만 시 온콜 시스템을 통해 개발자에게 자동 알림이 가도록 설정했어요. 📞
- 장애 발생 시 IDC 접속 대신 슬랙 알림을 통해 즉시 오류를 확인하고 조치할 수 있도록 개선했으며, 데이터독을 활용하여 시스템 모니터링 환경을 구축했어요. 📊
- 오프라인 재고 시스템 개선을 위해 RDB 중심 구조에서 벗어나 레디스를 도입하여 온라인 몰의 오프라인 재고 조회 API 성능을 개선했어요. 💡
- 레디스 도입 시 동시성 제어 이슈를 해결하기 위해 Redisson의 분산락을 사용했고, 조회 성능 이슈를 해결하기 위해 조회 용도별로 레디스 데이터셋을 3가지로 구성했어요. 🔒
- 올리브영은 지속적인 시스템 개선을 통해 고객 경험을 향상시키고 있으며, 앞으로도 더 나은 서비스를 제공하기 위해 노력할 것이에요. 💖