📖 이 글은 Redis 공식 문서(redis.io)를 기반으로 작성된 내용입니다.
💡 Java 기반 개발 관점에서 Redis 개념과 구조를 정리합니다.
Redis란 무엇인가?
Redis는 Remote Dictionary Server의 약자로, 인메모리 기반의 고성능 데이터 저장소다.
단순한 캐시를 넘어, 다양한 데이터 구조를 실시간으로 처리할 수 있다는 점에서 캐시, DB, 메시지 브로커 등 다양한 용도로 활용된다.
🔹 Redis의 정의 (공식 문서 기반)
Redis is an in-memory data store used by millions of developers as a cache, vector database, document database, streaming engine, and message broker.
- 인메모리 기반 저장소 (RAM 사용 → 매우 빠름)
- 다양한 데이터 구조 지원 (String, Hash, List, Set, Sorted Set, JSON 등)
- 내장 복제 + 디스크 영속성(RDB, AOF) 지원
- 원자적 연산 가능
🔹 Redis의 활용 예시
| 용도 | 설명 |
| 캐시 | DB 보다 빠른 접근 속도 |
| 세션 저장소 | 로그인 세션 등 유지 |
| 실시간 채팅 | pub/sub, stream 활용 |
| 벡터 DB | AI 임베딩 검색에 사용 |
| 문서 DB | JSON 저장 및 조회 |
| AI/챗봇 | 빠른 응답 처리, 대화 상태 저장 |
🔹 Redis 통합 도구 및 언어별 라이브러리
- Java : Spring Data Redis
- Python : redis-py, redisvl
- 기타 : Node.js, Go 등 다수 지원
- 모니터링 : Prometheus + Grafana
🔹 Java 환경에서의 Redis 활용
- 주요 라이브러리 :
Spring Data Redis,Lettuce,RedisTemplate - Spring Boot 연동 용이 + `@Cacheable` 등 Cache 추상화 지원
- pub/sub 또는 stream을 활용한 실시간 처리 가능
- Redis는 Java 백엔드에서 세션 저장, 토큰 관리, 메시지 처리에 자주 사용됨
🔹 Redis 배포 방식
- Redis Cloud (클라우드 기반 무료/유료 DB 제공)
- Redis Enterprise (상용 Redis 버전)
- Kubernetes 배포 (Operator 지원)
마무리
Redis는 단순 캐시를 넘어서 실시간 애플리케이션에 필요한 다양한 기능을 가진 강력한 인메모리 데이터 저장소이다.
이제 다음 단계로, Redis의 자료구조와 명령어를 정리해보자
🔗 참고 자료
- Redis 공식 문서: https://redis.io/docs/latest/get-started/
- Spring Data Redis: https://docs.spring.io/spring-data/redis/docs/current/reference/html/
'Database > Redis' 카테고리의 다른 글
| 🚨 Docker로 Redis 실행 시 포트 충돌 에러 해결하기 (bind: address already in use) (2) | 2025.08.28 |
|---|---|
| 🚨 Spring Boot + Redis 연결 오류: RedisConnectionFailureException: Unable to connect to Redis (0) | 2025.08.20 |
| [Redis] Redis 정리 #3 - 캐시 적용과 @Cacheable 사용법 (0) | 2025.07.20 |
| [Redis] Redis 정리 #2 - 자료구조와 명령어 (0) | 2025.07.20 |