infra
Platform
강의
실습
학습경로
로드맵
블로그
커뮤니티
검색
Linux, Docker, DNS...
⌘K
로그인
시작하기
ACTIVE INCIDENT
00:00 elapsed
LAB
LAB-DATABASE-04-REDIS-CACHING
SEV-2
Redis로 API 응답속도 10배 줄이기 — Cache-Aside 패턴 실습
ELAPSED
00:00
PHASE
0 / 5
SLA
40분
🗄️ Database
← 목록
INCIDENT RESPONSE
0 / 6 단계 완료
00
BRIEF
인시던트 브리프
01
INVESTIGATE
Redis CLI 기초 — 데이터 구조와 명령어
02
REASON
Cache-Aside 패턴 구현 — 캐시 히트/미스 로직
03
EXECUTE
TTL 전략 설계 — 데이터 성격에 맞는 만료 시간
04
FIX
캐시 무효화 — 데이터 변경 시 캐시를 어떻게 처리할까
05
COMPLETE
해결 완료
📚 PREREQUISITES
Lab
postgresql-setup
Theory
docker/docker-compose
TRACK
DATABASE
SLA
40분
SEV
SEV-2
PHASES
4단계
ENV
container
INCOMING TICKET
“모니터링 경보: "상품 목록 API /api/products 평균 응답시간 1.2초 — 임계치(500ms) 초과. DB 쿼리 900ms 차지, 캐시 도입 검토 요청"”
YOUR ROLE
주니어 인프라 엔지니어
IMPACT IF UNRESOLVED
상품 목록 API 지연으로 사용자 이탈 증가. Redis 캐시 없이 트래픽이 늘수록 DB 부하 선형 증가
🚨
INCIDENT BRIEF
모니터링 대시보드에 알림이 울렸습니다.
상품 목록 API /api/products 평균 응답시간 1.2초. 임계치(500ms) 초과.
분석 결과 DB 쿼리가 900ms를 차지합니다. 상품 데이터는 하루에 몇 번밖에 바뀌지 않는데, 매 요청마다 DB를 치고 있습니다.
Redis를 도입해 Cache-Aside 패턴을 구현하면, DB 히트를 최소화하고 응답시간을 수십ms로 줄일 수 있습니다.
⏱ 40분
📊 중급
🔧 4단계
#redis
#caching
#cache-aside
#ttl
MISSION
1
Redis CLI 기초 — 데이터 구조와 명령어
redis-cli로 접속해 String, Hash, List, Set 기본 명령을 실행하고, TTL을 설정해 만료 동작을 확인한다
2
Cache-Aside 패턴 구현 — 캐시 히트/미스 로직
Node.js 코드로 Cache-Aside 패턴을 구현해 DB 쿼리 결과를 Redis에 캐싱하고, 캐시 히트와 미스 동작을 확인한다
3
TTL 전략 설계 — 데이터 성격에 맞는 만료 시간
데이터의 변경 빈도와 정합성 요구사항에 따라 TTL 전략을 다르게 적용하고, Redis에서 실제 만료 동작을 확인한다
4
캐시 무효화 — 데이터 변경 시 캐시를 어떻게 처리할까
상품 정보가 업데이트됐을 때 관련 캐시를 즉시 무효화하는 패턴을 구현하고, SCAN으로 패턴 매칭 키를 안전하게 삭제하는 방법을 익힌다
📌 선수 지식
• [실습] postgresql-setup
• [이론] docker/docker-compose
ℹ️ 실습 환경
환경:
container
필요 도구: redis-cli, docker
검증 스크립트:
/labs/lab-database-04-redis-caching/scripts/verify.sh
🔒
실습 실행은 Pro 플랜 전용입니다
인시던트 브리프와 학습 자료는 지금 바로 확인할 수 있습니다. 실제 실습 진행 및 터미널 사용은 Pro 플랜에서 가능합니다.
Pro로 업그레이드 →
>_ LAB TERMINAL
↔ 너비 조절
✕
참고 자료
노트
활동 로그
NOTES