올
올리브영
December 13, 20221회
올리브영 결제 이야기 Part - 3

간단 소개
올리브영 주문 결제 시스템 성능 향상을 위해 트랜잭션 분리를 통한 Dead Lock 해결 과정을 설명합니다.
AI Summary
- 문제 상황: 올리브영 주문 시, 많은 사용자가 동시에 구매할 때 DB Lock 및 Dead Lock 발생으로 시스템 성능 저하 발생.
- 트랜잭션이 직렬로 처리되면서 DB가 Lock 상태가 되어 대기 시간이 발생.
- Dead Lock이 중첩되어 시스템 리소스 과다 사용 및 시스템 셧다운 가능성 존재.
- 개선 방향 및 해결 방안: 주문 완료 처리 시 트랜잭션 단위를 분리하여 Dead Lock 발생을 해결.
- 상품 A, B를 동시에 주문 시, 과거에는 Item A, B 모두 처리해야 Commit되는 구조였음.
- 트랜잭션 분리를 통해 Item A, B 중 어느 것을 먼저 선점하든지 각각 바로 Commit되도록 변경.
- 개선 확인 및 결과: Jmeter를 이용한 테스트 결과, Dead Lock 발생이 해소되고 시스템 성능 향상 확인.
- 기존 프로세스에서는 무수한 오류와 DB Lock 발생, Dead Lock으로 시스템 멈춤.
- 개선된 프로세스에서는 안정적인 속도 유지, 에러 및 Dead Lock 미발생.
- 실제 운영 환경 적용 후, 트래픽 증가 시에도 안정적인 주문 처리 가능.
Next Feeds

CockroachDB in Production
쿠키런 킹덤의 메인 DB로 CockroachDB를 선택한 이유와 Production 환경에서의 운용 노하우, 고려사항을 소개합니다.
CockroachDB분산 데이터베이스쿠키런 킹덤데이터베이스성능 최적화
2022. 12. 13.
데브시스터즈

지연 시간 없이 웹폰트 서빙하기 - Feat. Safari & Edge functions
웹폰트 최적화 기법(Subset Font, Preload)과 Safari 브라우저의 Preload 문제 해결을 위한 CloudFront Function 활용법을 소개합니다.
웹폰트PreloadSafariCloudFront FunctionSubset Font
2022. 12. 13.
뱅크샐러드

후기 개선 프로젝트가 끝이 아닌 시작인 이유
컬리 후기 개선 프로젝트는 사용자 경험 개선을 목표로 진행되었으며, 소통 강화와 단계별 로드맵을 통해 성공적으로 완료되었다. 다음 Phase를 통해 더욱 발전된 후기 서비스를 제공할 예정이다.
후기 개선사용자 경험소통로드맵컬리
2022. 12. 12.
컬리

다양한 제품 개발 방법론 - 버즈빌 제품팀이 일하는 법#3
버즈빌 제품팀의 제품 개발 방법론 변화와 OKR, PRD, OST, 사전 부검 등 다양한 방법론 적용 사례를 소개합니다.
OKRPRDOSTPre-Mortem팀 토폴로지
2022. 12. 12.
버즈빌

도전, if(kakao)dev2022! Coze, Sherlock, Woozu
카카오엔터 개발자 3인의 if(kakao)dev2022 참여 후기: 발표 준비 과정, 온라인 전환 아쉬움, 발표 소감 및 개선점.
if(kakao)dev2022개발자 컨퍼런스코드 가독성DDDTechnical Writing
2022. 12. 12.
카카오엔터테인먼트FE

엘라스틱서치를 활용한 수평 확장 가능한 광고 서버 만들기
엘라스틱서치를 활용하여 수평 확장 가능한 광고 서버를 구축하고 성능을 최적화한 사례를 소개합니다.
엘라스틱서치광고 서버수평 확장inverted index추천 엔진
2022. 12. 11.
버즈빌