🧠 Redis란?

정의

Redis는 메모리 기반의 고성능 데이터 저장소이다. 캐시, 세션, 간단한 데이터 저장, 메시지 큐 보조 용도 등으로 자주 사용한다.

🎯 사용하는 이유

  • 메모리 기반이라 빠르다.
  • 키-값 구조로 접근이 쉽다.
  • 다양한 자료구조를 지원한다.
  • 캐시, 세션, 간단한 상태 저장에 유용하다.

포인트

Redis는 빠르게 읽고 쓰기 좋은 인메모리 저장소로 이해하면 좋다.

🧱 주요 활용처

  • 캐시
  • 세션 저장소
  • 토큰 저장소
  • 분산 락
  • 순위표
  • 간단한 큐 보조

🧩 Redis의 특징

  • 메모리 기반이라 응답 속도가 빠르다.
  • 문자열, 리스트, 해시, 셋, 정렬된 셋 등을 지원한다.
  • 필요하면 디스크에 저장해 데이터 유실을 줄일 수 있다.
  • TTL을 설정해 만료 관리를 할 수 있다.

🔍 자주 쓰는 자료구조

자료구조 설명
String 단순 값 저장
List 순서가 있는 데이터
Hash 필드-값 구조
Set 중복 없는 집합
Sorted Set 점수 기반 정렬 집합

🛠️ Redis와 캐시

  • 자주 조회하는 데이터를 저장한다.
  • DB 조회 비용을 줄인다.
  • 만료 시간을 둬서 오래된 데이터가 남지 않게 한다.

정리

Cache는 자주 쓰는 데이터를 빠르게 꺼내기 위한 임시 저장소이고, Redis는 그 용도로 매우 자주 쓰이는 대표적인 저장소다.

🧩 Redis와 메시지 처리

  • Redis Pub/Sub
  • Redis Streams
  • MessageQueue 보조 용도

[!important] 주의 Redis를 메시지 브로커처럼 쓸 수는 있지만, 모든 상황에서 전용 MQ를 대체할 수 있는 것은 아니다. 요구사항에 따라 Kafka나 RabbitMQ가 더 적합할 수 있다.

⚠️ 주의할 점

  • 메모리 사용량을 꾸준히 관리해야 한다.
  • 만료 정책을 잘 설정해야 한다.
  • 데이터 영속성이 필요한지 먼저 판단해야 한다.
  • 캐시와 원본 데이터의 정합성을 고려해야 한다.

✅ 활용 예시

  • 인증 세션 저장
  • API 응답 캐시
  • 인기 게시글 캐시
  • 분산 작업 상태 저장
  • 임시 토큰 저장

🧾 정리

Redis는 빠른 속도가 필요한 메모리 기반 저장소이다. 캐시, 세션, 분산 처리 보조 도구로 매우 유용하며, 상황에 따라 메시지 처리에도 활용할 수 있다.


연결문서

댓글남기기