idea·blog

REDIS · EASY DEMO

같은 데이터를 두 번 읽어보세요.

첫 요청은 DB까지 가지만, 다음 요청은 Redis에 저장된 값을 바로 사용합니다.

Redis의 핵심 장점더 빠르게 읽고
DB 요청은 줄이기

두 번만 눌러보기

상품 정보를 불러오면 어디서 올까요?

1 처음에는 DB에서 읽어요.2 같은 데이터를 다시 읽어요.3 Redis가 바로 응답해요.
웹 서비스상품 정보 요청
먼저 확인Redis 캐시아직 비어 있음
캐시에 없을 때만원본 DB상품 데이터 보관

응답 시간은 원리를 보여주기 위한 예시이며 실제 측정값이 아닙니다.

이번 요청 결과

아직 요청하지 않았어요.버튼을 누르면 첫 요청과 캐시 요청의 차이를 보여드립니다.
전체 요청0버튼을 누른 횟수
원본 DB 읽기0캐시가 없을 때만
Redis 캐시 적중0DB 요청을 줄인 횟수

한 단계 더 · 오래된 값

DB 가격이 바뀌면 캐시는 어떻게 될까요?

빠른 응답이 항상 최신 응답은 아닙니다. 원본과 캐시를 나란히 비교해 보세요.

원본 DB · 최신 값89,000원DB 쓰기 0
Redis 캐시 · 저장된 값비어 있음첫 조회 뒤 채워집니다
준비먼저 Redis에 상품을 저장합니다.위의 첫 요청과 같은 흐름으로 DB를 읽고 캐시를 채웁니다.

이 실험은 cache-aside에서 자주 쓰는 “DB 갱신 성공 후 캐시 삭제” 흐름을 단순화했습니다. 실제 서비스에서는 DB 쓰기와 캐시 삭제 중 하나가 실패할 때를 위한 재시도나 이벤트 처리도 필요합니다.

한 단계 더 · 요청 몰림

TTL이 끝난 순간 요청 10개가 들어오면?

모두가 같은 캐시 미스를 보면 원본 DB를 동시에 읽는 캐시 스탬피드가 생길 수 있습니다.

실제 부하 측정이 아닌 원리 비교입니다. 운영 환경에서는 잠금, single-flight, TTL 무작위 분산, 만료 전 갱신 같은 방법을 상황에 맞게 선택합니다.

장점 세 가지만

Redis를 캐시로 쓰는 이유

01반복 조회가 빨라져요.

자주 찾는 값을 메모리에서 바로 읽습니다.

02DB가 덜 바빠져요.

같은 데이터를 매번 원본에서 읽지 않습니다.

03오래된 값은 지워져요.

TTL이 끝나거나 데이터가 바뀌면 캐시를 비웁니다.

캐시 확인없으면 DB 조회Redis에 잠시 저장변경되면 캐시 무효화
교육용 시뮬레이션입니다.

실제 Redis 서버나 데이터베이스에 연결하지 않습니다. 운영 환경의 응답 속도와 동시 요청 결과는 네트워크, 데이터 크기, 서버 구성과 캐시 적중률에 따라 달라집니다.

참고: Redis 공식 Cache-aside 안내 · TTL 명령 문서

실험을 마쳤다면