본문 바로가기
업무 기록/ETC

Redis 란 , 장단점, 사용 상황, 사용법 기본

by code2772 2023. 8. 23.

[ 목차 ]

    728x90
    반응형
    Redis(Remote Dictionary Server)는 메모리 내에서 데이터를 보관하므로 매우 빠르게 읽고 쓸 수 있으며, 다양한 데이터 구조를 지원한다. 주로 키-값(key-value) 저장소로 사용되며, 문자열, 리스트, 해시맵, 집합 등 다양한 데이터 타입을 지원한다.

     Redis는 빠른 데이터 저장과 검색을 위한 오픈 소스 인메모리 데이터 스토어로, 다양한 애플리케이션에서 성능 향상과 데이터 관리를 위해 활용한다.

     

    Redis 장단점

    빠른 데이터 접근, 다양한 데이터 구조 지원, 영송성 및 스냅샷, Pub/Sub 메커니즘, 클러스터링 및 고가용성 등이 있다. 반면 단점으로는 메모리사용, 데이터 복제와 일관성, 단일 쓰레드 모델, 복잡한 쿼리 지원의 한계, 설정 및 관리의 복잡성이라는 단점이 발생할 수 있다. 애플리케이션의 요구 사항과 성능 목표에 따라 Redis를 적절히 활용해야 한다. 

     

    Redis 사용 예시

    웹 애플리케이션 캐싱:

    상황: 웹 애플리케이션을 운영 중, 데이터베이스에서 자주 요청되는 데이터를 매번 불러오면서 성능이 저하발생.

    사용 예시:

    Redis를 사용하여 자주 요청되는 데이터를 메모리에 캐시한다. 예를 들어, 인기 제품 목록이나 뉴스 피드를 Redis에 저장하고, 매번 데이터베이스에 접근하는 대신 Redis에서 빠르게 가져와 웹 페이지 로딩 시간을 크게 줄일 수 있다.

     

    세션 관리:

    상황: 웹 애플리케이션에서 사용자 로그인 세션을 관리.

    사용 예시:

    사용자 로그인 정보를 Redis에 저장하여 세션 관리에 사용한다. 사용자가 로그인하면 Redis에 세션 토큰과 사용자 정보를 저장하고, 로그아웃 시 삭제. 이를 통해 로그인된 사용자의 세션을 쉽게 관리할 수 있다.

     

    작업 대기열:

    상황: 백그라운드 작업을 처리.

    사용 예시: Redis를 사용하여 작업 대기열을 생성. 예를 들어, 이메일 전송, 이미지 처리, 데이터 업로드 등과 같은 작업을 대기열에 추가하고, 백그라운드 워커 프로세스가 Redis에서 작업을 추출하여 처리.

     

    이외 실시간 대시보드, 실시간 게임 리더보드 등 다양하게 사용하고 있다.

     

    Redis CLI 예

    Redis CLI 실행: 로컬 Redis 서버에 기본 포트 6379

    Redis CLI를 실행하려면 터미널 또는 명령 프롬프트에서 다음 명령을 입력.

    redis-cli

     

    데이터 추가 및 검색:

    Redis CLI를 사용하여 데이터를 추가하고 검색할 수 있다. 예를 들어, "mykey"라는 키에 "Hello, Redis!"라는 값을 저장하려면 다음과 같이 입력

    SET mykey "Hello, Redis!"

    그리고 나서 해당 값을 검색하려면:

    GET mykey

    결과로 "Hello, Redis!"가 표시된다.

     

    리스트, 해시맵, 집합 등 다양하게 다룰 수 있다, 더 자세한 예시는 차 후에 작성하겠다.

    반응형