아카이브사이트맵
© 2026 Rayon. All rights reserved.
DevDay
아티클랭킹스페이스채용
올리브영 favicon올리브영

올리브영, 주문 시스템 Dead Lock 탈출!

by DD
2022-12-13
3년 전
조회수 6

동시 주문 처리 시 DB Lock으로 인한 Dead Lock 발생

개별 트랜잭션 분리를 통해 Dead Lock 문제 해결

Jmeter를 활용한 성능 테스트 결과, 주문 처리 속도 향상 및 에러 감소 확인

Dead Lock 발생 원인 분석

구체적으로 동시성 제어를 위해 트랜잭션을 직렬 처리하면서 DB Lock이 발생했다. 따라서 높은 트래픽 환경에서 Dead Lock이 빈번하게 발생하여 시스템 성능 저하를 야기했다. 반면, 다양한 상품 속성과 롤백 고려로 인해 트랜잭션 분리가 쉽지 않았다.

트랜잭션 분리를 통한 문제 해결

결과적으로 개별 트랜잭션으로 분리하여 Dead Lock 문제를 해결했다. Emma와 Olivia가 상품을 동시 주문 시, 각 상품별로 즉시 Commit 되도록 변경했다. 따라서 DB Lock 대기 시간 감소 및 전반적인 시스템 성능 향상을 달성했다.

Jmeter를 활용한 성능 검증

Jmeter를 사용하여 Dead Lock 발생 여부 및 주문 처리 속도를 검증했다. 기존 시스템은 Dead Lock으로 인해 성능 저하가 발생했지만, 개선된 시스템은 안정적인 처리 속도를 유지했다. 따라서 높은 트래픽 환경에서도 주문 처리 안정성을 확보했다.

올리브영 결제 이야기 Part - 3
중급
아키텍처
SQL
Jmeter
Data
원문 읽기
원문 읽기

댓글 0

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

관련 추천 글

올리브영, OCI 전환으로 주문 서비스 성능 획기적 개선!

올리브영 로고

SQL 스키마를 로컬에서 ER 다이어그램으로 변환하는 무료 도구

해커뉴스 로고

SQL 정적 분석, 왜 부족할까? 3가지 핵심 도구와 커뮤니티의 통찰

레딧 로고

스택오버플로우(SO), AI 이전부터 시작된 몰락의 원인은?

해커뉴스 로고

이번 주 당신의 '윈'은 무엇인가요?

데브투 로고

AI 기술 격차 해소! 개발팀 AI 수석 회의 사례

여기어때 로고
올리브영 favicon올리브영
중급
아키텍처
SQL
Jmeter
Data

관련 추천 글

올리브영, OCI 전환으로 주문 서비스 성능 획기적 개선!

올리브영 로고

SQL 스키마를 로컬에서 ER 다이어그램으로 변환하는 무료 도구

해커뉴스 로고

SQL 정적 분석, 왜 부족할까? 3가지 핵심 도구와 커뮤니티의 통찰

레딧 로고