아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
놀유니버스 favicon놀유니버스

NOL 주문 시스템, 안정성과 확장성을 모두 잡다!

by DD
2025-09-09
10개월 전
조회수 23

통합 장바구니 시스템을 통해 여러 카테고리의 상품을 한 번에 주문 가능하도록 구현

Redis 분산 카운터를 활용하여 고유한 주문번호를 생성하고, Kafka를 통해 주문 정보를 전파

Saga 패턴 기반의 분산 트랜잭션 관리로 데이터 일관성 및 장애 복구 보장

통합 주문 아키텍처의 핵심: 분산 시스템

NOL 주문 시스템은 마이크로서비스 아키텍처를 기반으로 구축되어 각 서비스가 독립적으로 운영된다. 구체적으로 통합 장바구니를 통해 여러 카테고리 상품을 묶어 주문 가능하게 설계되었다. 따라서 주문 준비, 결제, 주문 완료의 3단계 프로세스를 거쳐 안정적인 주문 처리를 지원한다.

분산 트랜잭션 관리: Saga 패턴

NOL은 Saga 패턴을 활용하여 분산 트랜잭션 문제를 해결한다. 상태 기록 → 순차 실행 → 선택적 보상 패턴을 통해 데이터 일관성을 유지한다. 반면, 서비스 전면 장애 시에는 롤백 과정의 오류를 방지하기 위해 DLQ를 활용하여 재처리를 시도한다.

주문 시스템의 확장성 확보: 이벤트 기반 아키텍처

주문 정보 전파를 위해 Kafka 클러스터를 활용하여 이벤트 기반 아키텍처를 구축했다. 구체적으로, 각 서비스는 필요한 정보를 구독하여 사용하고, 주문 완료 시 이벤트를 발행한다. 따라서 서비스 간 결합도 감소와 확장성 확보를 동시에 달성했다.

매달 수 백만 건의 여행을 책임지는 NOL 주문 이야기
중급
아키텍처
Redis
Kafka
Microservices
Data
Backend
놀유니버스 favicon놀유니버스
중급
아키텍처
Redis
Kafka
Microservices
Data
Backend

관련 추천 글

Spring Cache + Redis record 직렬화 문제, 똑똑하게 해결!

우아한형제들 로고

배달의민족, OSRM, Kafka, Redis로 배차 정확도 UP!

우아한형제들 로고

올리브영, Kafka 기반 준실시간 데이터 파이프라인 구축으로 45분 지연 해결!

올리브영 로고
원문 읽기
원문 읽기

관련 추천 글

Spring Cache + Redis record 직렬화 문제, 똑똑하게 해결!

우아한형제들 로고

배달의민족, OSRM, Kafka, Redis로 배차 정확도 UP!

우아한형제들 로고

올리브영, Kafka 기반 준실시간 데이터 파이프라인 구축으로 45분 지연 해결!

올리브영 로고

올영매장, MSA 환경에서 데이터 연동 전략: 캐시와 이벤트의 절묘한 조화

올리브영 로고

Kafka 대신 RDB? 장시간 비동기 작업, Task Queue로 해결!

우아한형제들 로고

DynamoDB 부하, Kafka와 Redis로 실시간 제어!

롯데온 로고

댓글 0

첫 번째 댓글을 남겨보세요!