프로젝트 (Java)/예약마켓

이 리팩토링의 주요 목표는 재고 데이터의 실시간 처리를 개선하고, 분산 시스템 환경에서의 데이터 일관성을 보장하는 것입니다. 리팩토링 과정에서 중점을 둔 부분은 다음과 같습니다. 1. 실시간 재고 관리 Redis 사용: 재고 정보를 Redis에 저장하여 빠른 읽기/쓰기 속도를 제공하며, 재고 정보의 실시간 업데이트를 가능하게 합니다. 이는 고객이 최신 재고 상태를 바탕으로 결정을 내릴 수 있게 도와줍니다. 재고 정보 구조화: StockService에서는 Redis에 저장된 재고 정보를 CreateStockDto 객체로 변환하여 처리합니다. 이는 데이터를 구조화하고 애플리케이션 내에서의 데이터 처리를 용이하게 합니다. 2. WebClient 연결 비동기 처리 도입: WebClient를 통한 비동기 HTTP..
GitHub 저장소 프로젝트의 소스 코드 및 관련 자료는 GitHub 저장소 jaehyuuk/yeyak-market에 호스팅되어 있습니다. 이를 통해 프로젝트에 대한 최신 정보, 변경 사항 및 개발 진행 상황을 확인할 수 있습니다. GitHub - jaehyuuk/yeyak-market Contribute to jaehyuuk/yeyak-market development by creating an account on GitHub. github.com API 문서 예약마켓 API에 대한 상세 문서는 Postman을 사용하여 작성되었습니다. API 문서를 통해 사용 가능한 모든 엔드포인트, 요청 방법, 파라미터, 예상되는 응답 등을 확인할 수 있으며, API를 테스트할 수 있는 환경도 제공됩니다. yeyak..
주문 로직을 변경하여 실시간 재고 관리를 위해 WebClient를 사용하여 Redis에 저장된 재고 정보와 연결합니다. 이를 통해 주문 처리 시 재고 수량을 실시간으로 업데이트하고, 주문 취소 시에는 재고를 복원합니다. 주요 변경 사항 주문 준비(prepareOrder), 주문 처리(processOrder), 주문 취소(cancelOrder), 주문 항목 제거(removeOrderItem), 주문 삭제(deleteOrder) 등의 로직에 재고 관리 로직을 추가했습니다. 주문이 성공적으로 처리될 때(processOrder), 각 주문 항목에 대한 재고 수량을 업데이트합니다. 주문 취소(cancelOrder) 또는 주문 항목 제거(removeOrderItem) 시, 해당 항목의 재고를 복원합니다. 주문 삭제..
실시간 재고 관리를 위해 Redis를 활용한 별도의 재고 관리 서비스를 구현합니다. 이 서비스는 StockController를 통해 REST API를 제공하며, StockService에서는 Redis에 재고 정보를 저장, 조회, 수정, 삭제하는 로직을 처리합니다. StockController StockController는 재고 관련 HTTP 요청을 처리하는 컨트롤러입니다. 이 컨트롤러는 재고 정보의 저장, 조회, 수정, 삭제 기능을 제공합니다. @RestController @RequestMapping("/api/stocks") @RequiredArgsConstructor public class StockController { private final StockService stockService; @Po..
Docker를 사용하여 예약된 시간에 따라 상품의 재고 정보를 자동으로 확인하고 알림을 주는 툴을 구축하였습니다. Python 스크립트는 http_request_stock.py로 명명되며, redis와 APScheduler를 사용하여 예약 시작 10분 전과 예약 종료 시에 상품 재고 정보를 로그로 출력합니다. Dockerfile 구성 Dockerfile은 Python 환경을 구축하고 필요한 의존성을 설치하는 데 사용됩니다. 또한, 작성한 Python 스크립트를 컨테이너 내부에 복사하고 실행합니다. # Dockerfile FROM python:3.9-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements..
Docker를 사용하여 HTTP 요청을 자동화하는 툴을 구축하였습니다. 주요 기능은 사용자 등록, 로그인, 주문 생성, 결제 시도를 자동으로 수행하는 것입니다. Python 스크립트는 http_request_tool.py로 명명되며, 동시에 여러 HTTP 요청을 보내는 데 사용됩니다. Dockerfile 구성 Dockerfile은 Python 환경을 구축하고 필요한 의존성을 설치하는 데 사용됩니다. 또한, 작성한 Python 스크립트를 컨테이너 내부에 복사하고 실행합니다. # Dockerfile FROM python:3.9-slim WORKDIR /app COPY requirements.txt . RUN pip install --no-cache-dir -r requirements.txt COPY . . ..
hihyuk
'프로젝트 (Java)/예약마켓' 카테고리의 글 목록