🟩/Redis

Redis

진뚱이용 2024. 6. 13. 01:18
  • 오픈 소스 인메모리 데이터 구조 저장소이다. 
  • 고속 성능과 다목적성을 위해 사용되며, 다양한 데이터 구조를 지원한다.
  • "Remote Dictionary Server"의 약자

인메모리 데이터 저장

  • 데이터를 메모리에 저장하므로, 매우 빠른 읽기 및 쓰기 성능을 제공한다.
  • 데이터베이스, 캐시, 메시지 브로커 등 다양한 용도로 사용될 수 있다.

다양한 데이터 구조 지원

지속성 옵션

  • 주로 메모리에서 동작하지만, 데이터 지속성을 위해 스냅샷과 Append-Only File(AOF) 방식을 사용해 디스크에 데이터를 저장할 수 있다.

복제

  • 마스터-슬레이브 복제를 지원하여 데이터를 여러 서버에 복제할 수 있다.

고가용성 - Redis Sentinel

  • Redis의 고가용성(High Availability) 솔루션이다.
  • 마스터와 슬레이브 인스턴스를 지속적으로 모니터링하여 상태를 체크한다.
    • 문제가 발생하면 이를 감지하고 관리자에게 알린다. 
  • 마스터 서버에 장애가 발생하면 Sentinel은 슬레이브 서버 중 하나를 새로운 마스터로 승격시킨다.
  • Redis 클러스터의 구성 정보를 관리하고, 클라이언트에게 새로운 마스터 정보를 제공한다. 
    • 클라이언트는 장애 복구 후에도 정상적으로 Redis 서버에 접근할 수 있다.

분산 처리

  • Redis Cluster를 통해 데이터를 여러 노드에 분산 저장하고, 샤딩을 통해 확장성을 확보할 수 있다.
  • 대규모 데이터 처리와 높은 가용성을 보장할 수 있다.