# 2. creww 프로젝트 기술 스택
우리집에는 2009년산 qnap nas가 있다. nas를 사용해서 배포를 하려는 목적은 서버 운영비 절약 정말 이 목적 한개를 중심으로 계획을 세웠다. 그래서 알아봤는데 우리집 nas를 qnap gui로 실행시키면 스프링 8버전 이상은 지원을 안하고 (cpu 호환이 안됨) 도커도 실행이 안된다. 그래서 알아보고 알아보다가 openmediavalut를…
우리집에는 2009년산 qnap nas가 있다. nas를 사용해서 배포를 하려는 목적은 서버 운영비 절약 정말 이 목적 한개를 중심으로 계획을 세웠다. 그래서 알아봤는데 우리집 nas를 qnap gui로 실행시키면 스프링 8버전 이상은 지원을 안하고 (cpu 호환이 안됨) 도커도 실행이 안된다. 그래서 알아보고 알아보다가 openmediavalut를…
GitHub 링크 동시성 제어를 적용한 부분에서 문제를 발견했다. 원래의 주문 처리 흐름에서의 동시성 제어 문제점 락을 걸어놨지만 결제가 완료된 시점에서 수량이 업데이트 되기 때문에 수량이 1개라고 해도 주문서가 100개가 생길 수가 있다. a와 b의 주문서가 생기고 a와 b 둘 다 결제창에 진입한다. 둘 다 결제가 진행 된 후에 수량이 1개만 줄어들…
GitHub 링크 개요 진행하고 있는 팀 프로젝트에서 레디스(Redis)를 사용하여 동시성 제어를 적용했다.배포 환경에서의 동작 여부를 확인하기 위해 JMeter를 사용하여 테스트를 진행했다.그 과정에서 레디스 관련 심각한 이슈를 만났지만, 다행히도 문제를 해결할 수 있었다.이번 경험을 통해 레디스를 활용한 동시성 제어 구현에 대해 많은 것을 배울 수…
GitHub 링크 동시성 제어란? 동시성 제어는 여러 사용자 또는 프로세스가 동시에 데이터에 접근할 때 데이터의 일관성과 무결성을 유지하기 위한 기술이다. 분산 락을 이용한 동시성 제어 게시글 CRUD 를 간단하게 구현하고 게시글에 좋아요 기능을 추가 parallel() 메서드를 사용하여 병렬 처리를 통해 좋아요 기능 수행. 각 좋아요 클릭 이벤트가…
Redis란? _._ _.-``__ ''-._ Redis란 오픈 소스 인메모리 데이터 구조 저장소로, _.-`` `. `_. ''-._ 다양한 데이터 구조를 지원하는 key-value 스토어 이다. .-`` .-```. ```/ _.,_ ''-._ 주로 캐시, 세션 관리, 실시간 분석, 메시징 등의 용도로 사용된...
리뷰 생성 조건 클라이언트가 주문한 횟수 만큼 리뷰 작성 제한 사용자는 특정 상품을 주문한 횟수와 동일한 수의 리뷰만 작성할 수 있다. 구현 방법 주문 횟수 조회 사용자 ID와 상품 ID를 기준으로 해당 사용자의 특정 상품에 대한 주문 횟수를 조회한다. long orderCount =…