From ab4bb689e22aa69c47b39d9f394a14a785642098 Mon Sep 17 00:00:00 2001 From: daadaadaah Date: Fri, 23 Jun 2023 13:52:06 +0900 Subject: [PATCH] =?UTF-8?q?Redis=EC=97=90=20=EC=9E=AC=EA=B3=A0=20=EC=A0=80?= =?UTF-8?q?=EC=9E=A5=ED=95=98=EB=8A=94=20Key=20=EC=9D=B4=EB=A6=84=20?= =?UTF-8?q?=EC=A2=80=EB=8D=94=20=EC=9D=98=EB=8F=84=EA=B0=80=20=EB=93=9C?= =?UTF-8?q?=EB=9F=AC=EB=82=98=EA=B2=8C=20=EB=B3=80=EA=B2=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../heecommerce/order/OrderService.java | 27 ++++++------------- 1 file changed, 8 insertions(+), 19 deletions(-) diff --git a/src/main/java/com/hcommerce/heecommerce/order/OrderService.java b/src/main/java/com/hcommerce/heecommerce/order/OrderService.java index f213d2e2..e87e7f68 100644 --- a/src/main/java/com/hcommerce/heecommerce/order/OrderService.java +++ b/src/main/java/com/hcommerce/heecommerce/order/OrderService.java @@ -38,7 +38,7 @@ public void placeOrder(OrderForm orderForm) { // (2) dealProductUuid 유효성 검사 : Redis // 1. 재고량 확인 - String key = "dealProduct:"+orderForm.getDealProductUuid().toString(); + String key = "dealProductInventory:"+orderForm.getDealProductUuid().toString(); int inventory = inventoryQueryRepository.get(key); // key에 해당 하는 값 없으면 Null 나옴 -> TODO : Null 처리 어떻게? Optional 활용? @@ -74,30 +74,19 @@ public void placeOrder(OrderForm orderForm) { return; } - /** - * 바로 MySQL을 사용한 것과 AWS SQS를 사용한 것과 어떤 차이가 있을까? - * 주문, 배송, 결제 가 각각 다른 Table 또는 다른 DB에 있을 때 이 작업 단위를 원자 단위로 하고 싶거나 또는 - * MySQL에 바로 저장하는 것이 너무 오래 걸려 비동기 처리로 그 시간을 단축시키고 싶을 때, AWS SQS가 의미 있지 않을까? - * 그러면, 상황을 그런 상황으로 기획해야하지 않을까? - */ - // 4. AWS SQS로 재고, 주문 및 결제 보내기 - // 재고 - 이벤트 소싱 기법 - // - - // 주문 - // 주문자 - // 주문한 딜 상품 UUID - // 주문 수량 - - // 배송 - // 수령자 정보 : 수령자 이름, 연락처, 주소, 상세주소, 배송 요청사항 - + // 4. 결제 : TODO : 결제 API 검토 후 추가해야할 데이터 추가 // 결제 -> TODO : 결제 API 검토 후 추가해야할 데이터 추가 + byte[] paymentUuid = convertUuidToBinary(UUID.randomUUID()); + // 총 결제 금액 // 결제 유형 // 결제 날짜 // 카드 정보 등등 + // 5. 주문 데이터 MySQL에 저장하기 + + // 6. 재고 : AWS SQS로 보내기 + // ------ 주문 끝 } }