레디스란?

레디스(REmote Dictionary Server)란 Key와 Value를 가진 NoSQL DBMS이다.

 

In-memory 데이터 저장소이며, 보통 DB, 캐시, 메시지 브로커 등의 용도로 사용하는 NoSQL DBMS.

 

초당 10만 ~ 15만건의 명령을 수행 가능하며, 파이프링을 통해 리눅스 시스템에서 초당 100만건의 요청도 수행이 가능하다.

 

레디스의 특징
  • In-memory 데이터 구조 : 디스크가 아닌 메모리 기반으로 한 데이터 구조 안에 데이터를 저장한다.
  • 디스크에 접근할 필요를 없애 검색 시간으로 인한 지연을 방지하며 CPU 명령을 적게 사용하는 좀 더 간단한 알고리즘으로 접근 가능하다.
  • Pub/Sub을 사용하여 메시징 시스템에 유용하며 불필요한 데이터를 채우지 않게하는데 유용.
  • 캐시를 사용하여 속도가 빠르다.
  • 싱글 스레드 기반 명령 수행 : Atomic operations을 보장하며 동시성을 지원한다.
  • 다양한 데이터 타입 지원 : strings, hashes, lists, sets, sorted sets, bitmaps, hyperloglogs, geospatitial indexes, streams 등을 지원하며 lists의 경우 일반적인 RDB와 비교하면 10배 빠른 속도를 지원.
  • Master-Slave 구성 가능 : Master-Slave와 같은 Redis Replication뿐만 아닌 Redis cluster를 이용한 분산처리, Redis Sentinel을 이용한 장애복구 시스템도 제공한다.

'개념' 카테고리의 다른 글

프록시 서버란? (Proxy Server)  (0) 2022.06.17
웹 서버(Web Server)란? WAS란?  (0) 2022.06.17
람다(Lambda)란?  (0) 2022.06.17
보일러플레이트(Boiler Plate)란?  (0) 2022.06.17
RESTFUL(restful)(RESTful) API가 무엇일까?  (0) 2022.06.17

+ Recent posts