Skip to content

Files

Latest commit

 Cannot retrieve latest commit at this time.

History

History
50 lines (33 loc) · 2 KB

README.md

File metadata and controls

50 lines (33 loc) · 2 KB

S-market

이벤트 한정 수량 상품에 대한 선착순 판매 기능을 구현을 목적으로 한 이커머스 프로젝트입니다. 짧은 시간 동안 대량의 주문 요청이 몰리는 상황에서도 안정적인 재고 관리를 목표로 하였습니다.

사용 기술

Java, Spring Boot, Spring Cloud Gateway, JPA, QueryDSL, MySQL, Redis, Kafka

Architecture

image

DB ERD 구조

image ERD 링크 : https://www.erdcloud.com/d/Wgx8k2m8XzcxEPoMx

구현한 기능

  1. 회원(User) 도메인
  • 로그인
  • 회원가입
  • 로그아웃
  1. 인증(Auth) 도메인
  • 액세스, 리프레쉬 토큰(JWT) 발급
  • 블랙리스트 처리
  • 인증 캐시 처리
  1. 상품(Product) 도메인
  • 상품 생성
  • 상품 조회
  • 재고 증가 및 감소

구현할 기능

  • 장바구니 도메인
  • 주문 도메인
  • 결제 도메인

기술적인 고민

Consumer 재시도 전략
이벤트성 상품 재고 차감 전략
Consumer 실패시 Redis 복구 전략
Kafka 이벤트 순서 보장
실시간 재고 시스템에서 안전한 Redis 재고 조작법