개발 공부/NestJS
인 메모리 데이터베이스, Redis (1편)
게으른 제이
2023. 3. 26. 17:20
인 메모리 캐싱은 주로 API 요청의 부하를 줄이기 위해 메모리에 데이터를 저장해놓는 것을 의미 합니다.
먼저 프로젝트에 의존성 패키지를 추가합니다. pnpm을 프로젝트 패키지 매니저로 사용하기 때문에 pnpm cli를 사용합니다.
이 게시글에서는 cache-manager-redis-store 2.0 버전을 사용합니다.
$ pnpm install cache-manager cache-manager-redis-store@^2.0
도커 컨테이너에 Redis와 Redis Commander를 설치합니다.
Redis Commander는 Redis를 편리하게 관리할 수 있게 도와주는 툴입니다.
redis:
image: 'redis:alpine'
env_file:
- .env
ports:
- ${REDIS_PORT}:${REDIS_PORT}
networks:
- network
volumes:
- redis:/data
redis-commander:
image: rediscommander/redis-commander:latest
environment:
- REDIS_HOSTS=local:redis:${REDIS_PORT}
ports:
- ${REDIS_VIEWER_PORT}:${REDIS_VIEWER_PORT}
depends_on:
- redis
networks:
- network
volumes:
redis:
driver: local
이제 Docker-Compose cli로 백그라운드 환경에 도커 컨테이너들을 실행합니다.
$ docker-compose up -d
설정해둔 레디스 커맨더의 주소로 접속해 잘 작동하는지 확인합니다.

다음 편에는 레디스를 직접 서비스에서 활용하는 방법을 알아보겠습니다.