Redis는 개방형 소스(BSD 라이선스), 메모리 내 데이터 구조 저장소로, 데이터베이스, 캐시 및 메시지 브로커(message broker)로 사용됩니다. Redis는 범위 쿼리(range queries), 비트맵(bitmaps), 하이퍼 로그(hyperlogs), 지리공간 인덱스(geospatial indexes) 및 스트림(streams)과 같은 데이터 구조를 제공합니다. Redis에는 복제, Lua 스크립팅, LRU 제거, 트랜잭션 및 다양한 수준의 디스크 지속성이 내장되어 있으며 Redis Sentinel을 통한 고가용성 및 Redis Cluster와의 자동 파티셔닝 기능을 제공합니다.
문자열 추가, 해시 값 증가, 목록으로 요소 푸시, 세트 교차, 결합 및 차이 계산, 정렬된 집합에서 순위가 가장 높은 멤버 가져오기 등의 이러한 유형에 대해 원자 작업을 실행할 수 있습니다.
최고의 성능을 달성하기 위해 Redis는 인메모리 데이터셋과 연동합니다. 사용 사례에 따라 데이터 집합을 주기적으로 디스크에 덤프 하거나 각 명령을 디스크 기반 로그에 추가하여 데이터를 유지할 수 있습니다. 기능이 풍부한 네트워크 인메모리 캐시만 필요한 경우에도 지속성을 비활성화할 수 있습니다.
Redis는 또한 매우 빠른 비차단 첫 번째 동기화, 네트 분할 시 부분 재동기화를 통한 자동 재연결을 통해 비동기식 복제를 지원합니다.
기타 기능은 다음과 같습니다.
- Transactions (거래)
- Pub/Sub
- Lua scripting
- Keys with a limited time-to-live (사용 기간이 제한된 키)
- LRU eviction of keys (키의 LRU 제거)
- Automatic failover (자동 장애 조치)
- 대부분의 프로그래밍 언어에서 Redis를 사용할 수 있습니다.
Redis는 ANSIC로 작성되며 외부 종속성 없이 Linux, *BSD 및 OS X와 같은 대부분의 POSIX 시스템에서 작동합니다. Linux와 OS X는 Redis가 가장 많이 개발되고 테스트되는 두 운영 체제이며, 배포에 Linux를 사용하는 것이 좋습니다. Redis는 SmartOS와 같은 Solaris에서 파생된 시스템에서 작동할 수 있지만, 지원은 최선의 노력입니다. Windows 빌드에 대한 공식 지원은 없습니다.
레디스에 대한 보다 자세한 내용을 알고 싶으신 분들은 아래 공식 홈페이지를 참고하시기 바랍니다.
레디스 공식 홈페이지:
'Django > Message Broker' 카테고리의 다른 글
[Redis] 레디스 설치 및 실행 방법 (Mac 버전) (0) | 2021.08.25 |
---|