[redis] 캐싱 전략
·
redis
캐시란?캐시는 자주 조회되는 데이터를 더 빠르고 가까운 저장소에 보관해 응답 지연을 줄이고, 원본 데이터베이스(DB) 부담을 낮추는 기술입니다. 메모리(예: Redis, Memcached)나 애플리케이션 내부(L1 캐시)처럼 접근 비용이 낮은 계층에 데이터를 보관해, 반복 요청 시 빠르게 응답할 수 있도록 합니다.캐시의 핵심은 성능과 일관성의 균형입니다. 최신 데이터를 얼마나 엄격하게 보장할지, 만료(TTL)를 어떻게 둘지, 장애 시 폴백을 어떻게 설계할지가 중요합니다.읽기 전략: Look-Aside(Cache-Aside) 동작 흐름애플리케이션이 먼저 캐시에서 조회합니다.값이 있으면 그대로 반환합니다(캐시 히트).값이 없으면(캐시 미스) 원본 DB에서 조회한 뒤, 캐시에 적재하고 반환합니다.장점캐시 장..
[redis] 센티널 설정 실습
·
redis
이번 시간에는 지난 이론에 이어 Redis Sentinel을 활용하여 마스터-슬레이브 구조의 고가용성(HA) 클러스터를 구성하는 실습을 진행하겠습니다.실습 구성Redis Master 1대 (redis-master)Redis Slave 1대 (redis-slave)Redis Sentinel 3대 (sentinel-1, sentinel-2, sentinel-3)구성 목적은 마스터 장애 시 슬레이브가 자동으로 마스터로 승격되고, 나머지 Sentinel이 이를 감지하여 클러스터 상태를 유지하는 것입니다.🐳 Docker Compose 구성services: redis-master: image: redis:7 container_name: redis-master ports: - "16379..
[Redis] 레디스 자료구조 활용 (2) - 자료 구조 활용 실습
·
redis
2025.04.11 - [redis] - [Redis] 레디스 자료구조 활용 (1) - 자료 구조 별 시간 복잡도 및 사례 확인 [Redis] 레디스 자료구조 활용 (1) - 자료 구조 별 시간 복잡도 및 사례 확인1. 📊 리더보드 (Leaderboard)주요 명령어ZADD key score member점수와 함께 멤버 추가O(log N)Skip List (정렬), Hash Map (멤버 조회)ZRANK key member정방향 순위 (낮은 점수 → 높은 점수)O(log N)Skip List 탐색ZREVRANK keyfeatherdale.tistory.com 지난 시간에는 Redis의 다양한 자료구조(Set, Sorted Set, List, HyperLogLog 등)가 어떻게 실무에 적용되는지를 살펴보..
[Redis] 레디스 자료구조 활용 (1) - 자료 구조 별 시간 복잡도 및 사례 확인
·
redis
2025.04.11 - [redis] - [Redis] 레디스 자료구조 활용 (2) - 자료 구조 활용 실습 [Redis] 레디스 자료구조 활용 (2) - 자료 구조 활용 실습2025.04.11 - [redis] - [Redis] 레디스 자료구조 활용 (1) - 자료 구조 별 시간 복잡도 및 사례 확인 [Redis] 레디스 자료구조 활용 (1) - 자료 구조 별 시간 복잡도 및 사례 확인1. 📊 리더보드 (Leaderboard)주featherdale.tistory.com 1. 리더보드 (Leaderboard)주요 명령어ZADD key score member점수와 함께 멤버 추가O(log N)Skip List (정렬), Hash Map (멤버 조회)ZRANK key member정방향 순위 (낮은 점수 →..
[Redis] 레디스의 기본 개념 (2) - 레디스에서 키를 관리하는 법
·
redis
2025.04.08 - [redis] - [Redis] 레디스의 기본 개념 (1) - 자료 구조 및 명령어 [Redis] 레디스의 기본 개념 (1) - 자료 구조 및 명령어2025.04.09 - [redis] - [Redis] 레디스의 기본 개념 (2) - 레디스에서 키를 관리하는 법 [Redis] 레디스의 기본 개념 (2) - 레디스에서 키를 관리하는 법Redis에서 키를 관리하는 방법Redis는 단순한 Key-Value 저featherdale.tistory.com 키의 자동 생성과 삭제Stream, Set, Sorted Set, Hash와 같은 복합 자료구조에서는 키를 명시적으로 생성하거나 삭제하지 않아도 Redis가 자동으로 처리합니다.주요 동작 원리키가 존재하지 않을 때 아이템을 삽입하면, Red..
[Redis] 레디스의 기본 개념 (1) - 자료 구조 및 명령어
·
redis
2025.04.09 - [redis] - [Redis] 레디스의 기본 개념 (2) - 레디스에서 키를 관리하는 법 [Redis] 레디스의 기본 개념 (2) - 레디스에서 키를 관리하는 법Redis에서 키를 관리하는 방법Redis는 단순한 Key-Value 저장소 이상의 기능을 제공합니다. 특히 자료구조별로 키의 생성, 삭제, 조회, 만료를 관리하는 다양한 방식이 존재합니다. 이 글에서는 Redis의featherdale.tistory.com 레디스의 기본 개념 (1) - 자료 구조 및 명령어Redis는 다양한 자료구조 기반의 인메모리 데이터 저장소입니다.이 글에서는 Redis의 주요 자료구조를 핵심만 정리해보았습니다.1. String가장 기본이 되는 자료구조로, 단순한 문자열뿐 아니라 정수, 실수처럼도 사..
[Redis] 마이크로서비스 아키텍처와 레디스
·
redis
개발자를 위한 레디스 - 1장1. NoSQL의 등장 배경기존 애플리케이션은 하나의 거대한 모놀리식(monolithic) 구조로 개발되어 왔습니다. 이 구조에서는 작은 수정도 전체 애플리케이션의 빌드와 배포를 유발하고, 서버 기동 및 배포 시간이 길어지는 문제가 있었습니다.또한, 트래픽 증가와 복잡한 트랜잭션에 유연하게 대응하기 어렵고, 중앙 집중형 RDBMS에 의존하기 때문에 확장성이 제한되었습니다.그러나 다음과 같은 요구가 증가하면서 NoSQL이 등장하게 되었습니다:실시간 로그, 소셜 그래프 등 비정형 데이터 증가정해진 스키마가 없는 유연한 구조의 필요성수평적 확장 및 고가용성에 대한 요구NoSQL은 고정된 스키마 없이 유연한 데이터 구조와 분산 환경에서의 높은 확장성을 제공합니다. 특히 마이크로서비스..