Cache Aside (= Look Aside, Lazy Loading) 전략
- 데이터를 조회할 때 주로 사용
- 레디스에서 먼저 조회하고, 없으면 데이터베이스에서 조회하고 & 레디스에 저장하는 전략
- 캐시에 데이터가 있을 경우(= Cache Hit)
- 캐시에 데이터가 없을 경우 (= Cache Miss)
▼ 게시판 서비스를 예제로 Cache Aside 작동 방식을 이해하기
더보기
- 처음 게시판 서비스를 배포했기 때문에 데이터베이스와 레디스에는 아무런 데이터도 저장이 안 되어 있음
- 신규 게시글 작성으로 데이터 저장
- 데이터베이스에 저장(레디스 저장 x)
- 사용자가 데이터를 조회하려고 요청
- 이 때, 레디스부터 조회
- 레디스에 데이터가 없다면(= Cache Miss), 데이터베이스에서 데이터 조회해서 응답
- 데이터베이스로부터 조회한 데이터를 응답한 뒤에 레디스에도 데이터를 저장
- 이 때, 레디스부터 조회
- 다시 한 번 사용자가 데이터를 조회하려고 요청
- 이 때, 레디스부터 조회
- 레디스에 데이터가 있으면(= Cache Hit), 바로 응답
- 이 때, 레디스부터 조회
Write Around 전략
- 데이터를 쓰기 작업(저장, 수정, 삭제)에 대한 전략
- 쓰기 작업 시에 DB에만 반영하는 방식(캐시에 저장 x)
- 그러다 데이터를 조회할 때 레디스에 데이터가 없으면 데이터베이스로부터 데이터를 조회해와서 레디스에 저장시켜주는 방식이다. --> 헷갈리는 문장이다...
'DBMS > Redis' 카테고리의 다른 글
| [Redis] Cache Aside, Write Around 전략의 한계점 / 해결 방법 (0) | 2024.11.03 |
|---|---|
| [Redis] 캐시(Cache), 캐싱(Caching) 이란? (1) | 2024.11.03 |
| [Redis] 키(key) 네이밍 컨벤션 (0) | 2024.11.03 |
| [Redis] 기본 명령어 (0) | 2024.11.03 |
| [Redis] Redis 실행 & 접속 명령어 (0) | 2024.11.03 |