Skip to main content Link Search Menu Expand Document (external link)

Redis

1. Redis란?

Remote Dictionary Server의 약자로서 key-value 데이터베이스다.

2. Redis 특징

1) In-Memory 데이터베이스

모든 데이터를 RAM에 저장을 한다. 그래서 디스크에 저장하는 데이터베이스 시스템에 비해 더 빠르다.  

2) Cluster Mode

여러 머신에 분산하여 데이터를 처리  
안정성과 고가용성을 제공한다.  

3) Persistence

데이터베이스에 기록되면 시스템이 재시작되거나 장애가 발생해도 그대로 유지되는 영속성 옵션을 제공  
RDB(Redis DataBases) 스냅샷: 메모리에 있는 데이터셋의 시점 복사본을 디스크에 저장  
AOF(Append-Only File): Redis에 적용되는 작성 작업을 모두 log로 저장  

4) Pub/Sub

 메시지 브로커로 사용할 수 있다.  

3. Redis의 장점

1) 높은 성능

2) 다양한 데이터 구조 지원

3) 클라이언트 측 캐싱

4) 프로토콜 다양성

4. Caching이란?

데이터를 빠르게 읽고 처리하기 위해 임시로 저장하는 기술  
사용되었던 데이터를 더 빠르게 접근하기 위해서 빠르게 접근 가능한 저장소에 저장한다는 개념  

5. Cache Hit/ Miss

1) Cache Hit

캐시 메모리에 데이터가 존재해 데이터를 가져오는 작업이 성공한 상태  

2) Cache Miss

캐시 메모리에 데이터가 존재하지 않아서 정상적으로 응답을 받지 못한 상태  

6. Cache-Aside 패턴

1) 클라이언트가 테이터를 요청

2) Redis에 해당 데이터가 있는지 확인

3) 데이터가 없어서 CacheMiss

4) 데이터 베이스에서 값을 찾아 서버로 전달

5) 해당 데이터 값을 Cache에 저장