Redis

2026. 7. 27. 12:58·Infra

이 글은 Velog에서 이전한 글입니다. Velog 원문 보기

Redis

  • 사용 이유
    • 캐싱(자주 액세스 되는 데이터를 메모리에 저장하여 시간 단축), 세션에 유용하다.
    • 높은 성능과 확장성 제공
    • in-memory 형태의 No-SQL, key-value 쌍의 해쉬 맵 형태의 데이터베이스이다.
    • 모든 데이터를 메모리에 저장하므로 디스크 I/O(입출력) 오버헤드가 없다. 이로 인해 매우 빠른 읽기와 쓰기 작업을 수행할 수 있다.
  • 사용하는 경우
    • 광범위한 데이터 구조 및 스트림 처리 기능에 대한 액세스 필요
    • 키와 값을 제자리에서 수정하고 변경할 수 있는 기능이 필요
    • 사용자 지정 데이터 제거 정책이 필요
    • 백업 및 웜 재시작을 위해 데이터를 디스크에 유지해야 한다.
    • 복제본 및 클러스터링을 통해 애플리케이션의 높은 가용성 또는 확장성을 확보해야한다.

사용하는 방법

로컬 환경에서 레디스를 호출

  • EC2를 예로 들면 인스턴스에 레디스를 설치해 인스턴스 메모리를 사용해 레디스를 사용하는 방법
    • 인스턴스의 메모리 여유가 있다면 비용적인 측면으로나 사용성 측면으로나 뛰어남
💡 Redis를 사용하기 위해 억지로 넣는 것은 좋은 접근이 아니다.

웹 서버에서 키-값 형태의 데이터 타입을 처리해야 하고, I/O가 빈번히 발생해 다른 저장 방식을 사용하면 효율이 떨어지는 경우에 사용해야한다.

  • 예시
    • 인기 동영상의 경우에는 1시간도 안돼서 100만 조회수를 넘기는 경우가 많다.
    • 이때 조회수에 해당하는 데이터를 RDS 형태의 데이터에 저장해 I/O를 반복한다면 엄청난 자원 + 쿼리가 사용될 것이다.
    • 이처럼 많은 I/O를 발생시키는 데이터를 처리할 때 레디스를 사용해 데이터를 캐싱 처리하고, 일정한 주기에 따라 RDS에 업데이트를 한다면 RDs에 가해지는 부담을 크게 줄이고, 성능을 크게 향상할 수 있다.
  • 유튜브 조회수와 같은 카운트 형태의 데이터

많은 I/O 말고도 사용자의 세션 관리에도 많이 사용된다.

  • 사용자의 세션을 유지하고, 불러오고 여러 활동들을 추적하는 경우 매우 효과적이다.

'Infra' 카테고리의 다른 글

✏️ [AWS] 서버 SSH 명령어가 너무 귀찮아  (0) 2026.07.29
VPC(Virtual Private Cloud)란?  (0) 2026.07.27
AWS Elastic Beanstalk  (0) 2026.07.27
Docker와 Kubernetes  (0) 2026.07.27
AWS(EC2, RDS, S3)  (0) 2026.07.27
'Infra' 카테고리의 다른 글
  • VPC(Virtual Private Cloud)란?
  • AWS Elastic Beanstalk
  • Docker와 Kubernetes
  • AWS(EC2, RDS, S3)
pp8817
pp8817
공부한 내용, 개발 관련 지식, 트러블 슈팅 등을 기록합니다. 이전 블로그: https://velog.io/@pp8817/posts
  • pp8817
    끄적이는 개발 log
    pp8817
  • 전체
    오늘
    어제
    • 분류 전체보기 (273)
      • Project (71)
        • 척척학사 (29)
        • Book (23)
        • Saynow (3)
        • YAPP 27기 (4)
        • 나의 작은 프로젝트 (10)
        • Landit (2)
      • Backend (88)
        • Spring (13)
        • Spring MVC (13)
        • Spring Security (4)
        • JPA (26)
        • Database (19)
        • HTTP·Web (13)
        • Architecture (0)
      • Language·CS (59)
        • Java·Kotlin (5)
        • CS Interview (17)
        • Backend Interview (5)
        • Concepts (32)
      • Algorithm (25)
        • Algorithm (24)
        • 소마 알고리즘 스터디 (1)
      • Infra (8)
      • Troubleshooting (11)
      • Retrospective (6)
      • Etc (5)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    interview
    Book
    http
    OS
    Project
    Python
    object
    게시판
    개념 정리!
    CS Interview
    java
    척척학사
    Algorithm
    나의 작은 프로젝트
    jpa
    Spring
    HTTP WEB 기본 지식
    트러블슈팅
    BOJ
    Spring MVC
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.6
pp8817
Redis
상단으로

티스토리툴바