@Sejong
안녕하세요. 말씀하신 비관적 row lock을 잡아놓으면 동시성문제로 인한 오버셀링이 발생하진 않습니다.
하지만 캐쉬로 리퀘스트를 스로틀링한 이유는
주문처리API에서는 트렌젝션이 크다보니 처리속도가 느려 주문완료이후 결제완료처리시 재고부족으로 취소가 되는 고객경험이 나쁘게 되게됩니다.
따라서 주문생성 -> 결제 -> 재고차감의 긴 트렌젝션으로 인한 고객 경험을 위하어 실재고가 아닌 가짜재고를 주문생성 단계에서 미리 차감하는 것과 같이 처리하여 리퀘스트를 컨트롤하게 되었습니다.