캐시란?

데이터를 읽을 때 임의의 공간에 저장하여 다음에 읽을 때는 더 빨리 읽을 수 있도록 도와주는 공간

클라이언트가 웹 서버에 요청을 보내면 DB로 가기 전에 캐시 서버에 데이터가 있는지 확인한다.

이때, 캐시 서버에 데이터가 존재한다면 DB에 데이터 요청하지 않고도 바로 클라이언트에 캐시에 존재하는 데이터를 반환해준다. (cache hit)

존재하지 않는다면(cache miss) DB에 해당 데이터를 요청한다.

 

Redis란?

캐시 시스템

키-값 기반 인메모리 데이터베이스

다양한 자료 구조 지원

싱글스레드로 한 번에 하나의 명령어만 처리 가능

 

Redis가 지원하는 다양한 자료 구조

Strings

redis의 가장 기본적인 타입

Vinary-safe한 key-value 구조

Lists

Strings element의 모음

Linked List와 유사한 구조

Sets 

정렬되지 않은 strinf collection

Sorted sets

Sets 자료구조에 score라는 값을 추가로 두어 해당 값을 기준으로 순서를 매김

Hahses

내부에 key-value 구조를 하나더 가지는 Reids 자료구조

value로 또다른 key-value 매핑

Bit arrays(bitMaps)

bit array를 다루는 자료구조

HyperLogLogs

확률적 자료구조로 unique한 항목들의 카운팅하는데 사용

 

 

 

참고 사이트

https://velog.io/@dabeen-jung/Redis-%EC%9C%88%EB%8F%84%EC%9A%B010%EC%97%90%EC%84%9C-%EC%84%A4%EC%B9%98

https://brunch.co.kr/@jehovah/20

https://devlog-wjdrbs96.tistory.com/374

 

+ Recent posts