1차 프로젝트에서 구현했던 장바구니 단순 CRUD에 Redis를 적용해서 빠른 조회가 가능하도록 리팩토링을 진행했습니다. 이 과정을 기록하고자 합니다.들어가기에 앞서 1차 프로젝트 주제는 음식 주문 관리 플랫폼으로 "배민 서비스"와 비슷하게 동작한다고 생각하면됩니다.장바구니에는 하나의 가게에 대해서만 메뉴 아이템을 담을 수 있습니다. 이미 다른 가게의 메뉴가 담겨져 있고 새로 추가하려고하는 메뉴가 다른 가게라면 replace true/false 여부로 장바구니의 내용을 변경할 수 있습니다. 그리고, 이미 장바구니에 존재한 메뉴 아이템을 또 담으면 그 만큼 수량을 증가시킵니다. RedisTemplate Hash 방식으로 장바구니 정보 redis에 저장장바구니처럼 부분 수정이 빈번하게 일어나는 데이터에는 ..
Redis
캐싱과 캐싱의 필요성Redis가 많이 활용되는 주제는 캐싱(Caching)이다. 이는 자주 사용되는 데이터를 더 빠른 캐시(Cache)에 저장하는 기법을 부르는 용어이다. 캐시란?Cache는 본래 CPU 내부의 작은 영역으로, 정말 빈번히 접근하게 되는 데이터를 저장해두는 임시 기억 장치입니다. 기본적으로 영속성을 위해 파일시스템(디스크)에 저장하고, 빠른 활용을 위해 메모리(RAM)에 저장한다면, 정말 많이 사용되는 휘발성 데이터가 캐시에 저장됩니다.빈번하게 접근하게 되는 데이터베이스의 데이터를 Redis 등의 인메모리 데이터베이스에 저장을 함으로서 데이터를 조회하는데 걸리는 시간과 자원을 감소시키는 기술을 캐싱이라고 합니다.웹 브라우저에서는 자주 바뀌지 않는 이미지 등을 브라우저 캐시에 저장해 페이지..
이번에는 redis를 intellij에 연결해보려고 합니다.redis 설정은 docker compose를 사용해서 테스트하겠습니다.✔️ docker compose 작성docker-compose.ymlservices: redis-stack: image: redis/redis-stack container_name: redis-stack-compose restart: always environment: REDIS_ARGS: "--requirepass systempass" ports: - 6379:6379 - 8001:8001REDIS_ARGS: "--requirepass systempass” : 비밀번호 “systempass” 로 설정 1️⃣ docker..