개요 회사 프로젝트 중 헥토파이낸셜 결제 모듈을 연동한 경험이 있었습니다. 그러나 기획상 강좌 신청과 결제가 분리되어 약간의 아쉬움이 있었습니다. 이번 프로젝트에서는 토스페이먼츠 결제 모듈을 이용해 일반적인 이커머스 사이트처럼 상품 구매와 동시에 결제가 이루어지는 시스
상품 재고량 감소 아래는 가장 간단한 상품 재고량 감소 메소드입니다. 이 메소드는 상품의 재고량을 조회하여 구매 수량과 비교한 후, 재고량을 수정합니다. 테스트 결과, 정상적으로 재고량이 감소되는 것을 확인하였습니다. 하지만 20명의 사용자가 동시에 접근하는 경우에는
저의 프로젝트는 여러 개의 상품을 한 번에 결제할 수 있게 기획하였습니다.저는 여러 개의 상품을 한 번에 결제할 수 있게 기획하였습니다. orderId를 통해 결제 트랜잭션 정보 조회 후, 상품의 종류 만큼 userProductService.decreaseProduct
🎇 이슈 발생 저번 게시글에서 REQUIRED_NEW를 이용해 트랜잭션을 분리해 데드락을 해결하였습니다. 그러나 동시성 제어 편에서 작성한 테스트 코드를 실행시키니 다른 오류가 발생했습니다.
이전 게시글에서 데드락을 방지하기 위해 REQUIRED_NEW 를 이용해 트랜잭션을 분리하였습니다. 이번에는 이에 대한 롤백 방식에 대해 작성해 보고자 합니다. 롤백이란? 롤백(Rollback)이란 트랜잭션 처리 중 오류가 발생했을 때, 해당 트랜잭션 범위 내의 모
저는 결제 시 상품 재고량의 동시성을 제어하기 위해 비관적 락(베타락)을 사용했습니다.이번 글에서는 이 시스템을 분산락으로 전환한 과정에 대해 다루겠습니다.분산락(Distributed Lock)이란 분산 시스템에서 리소스나 작업에 대한 접근을 제어하기 위해 사용되는 락