• 레디스 로컬 설치(mac, brew) 및 관리툴
    아키텍처 및 기술 공부/Redis 2024. 11. 2. 12:56
    반응형

    레디스 소개

     레디스의 데이터는 메모리(RAM) 저장된다. 그러므로, 디스크 I/O 오버헤드가 없어, 데이터에  빠른 접근이 가능하다. - 형태로 데이터를 저장하는 NoSQL 데이터베이스다. 단일 스레드로 작동한다.

     

     

     

     

    레디스 사용 사례

    1. 동시성 문제 해결: 단일 스레드를 사용하여 작업을 순차적으로 처리하므로 복잡한 동시성 문제를 피할 수 있다.
    2. 캐싱: 레디스는 데이터를 캐싱하는데 사용한다. 데이터베이스는 중요한 자원이다. 레디스에 캐싱하면, 데이터베이스의 부하를 줄일 수 있다. 레디스는 데이터를 메모리에 저장하므로, 빠른 응답 시간을 제공하여 애플리케이션 성능을 향상시킬 수 있다. 시스템에 따라 데이터베이스 접근에 문제가 생겨도 캐싱 데이터를 사용하여 가용성을 확보할 수도 있다.

     

     

     

    로컬 레디스 설치

     로컬에 레디스를 설치해보려는 이유는 다양하겠지만, 개발서버에 올리기 전 로컬 레디스로 테스트해보기 위함입니다.

     

    • brew를 이용해 레디스를 설치하고, 확인하는 명령어다.

     

    # brew 레디스 설치
    brew install redis
    
    # brew 레디스 확인
    brew list redis
    
    # 레디스 버전 확인
    redis-cli --version

     

     

    • 레디스 서버 작동 명령어다.
    # 레디스 서버 백그라운드 시작
    brew services start redis
    
    # 레디스 서버 중지
    brew services stop redis
    
    # 레디스 서버 재시작
    brew services restart redis

     

     

    • 레디스 접속 명령어다.
    # 레디스 접근 기본값: 127.0.0.1:6379
    redis-cli

     

     

     

    로컬 레디스 접속 툴 및 접속 방법

    • 레디스 인사이트라는 툴이 있다.
     

    Redis Insight

    DO MORE WITH YOUR DATA Visualize, optimize, and 
troubleshoot with Redis Insight Redis Insight is our free graphical interface for analyzing Redis data across all operating systems and Redis deployments with the help of our AI assistant, Redis Copilot. L

    redis.io

     

     

    • 설치 후 왼쪽 위에 Add Redis database로 로컬 레디스를 추가해준다.

     

     

     

    • brew설치 후 변경해준 것은 없으므로, Database Alias만 변경해서 "Add Redis Database"를 클릭한다.

     

     

    • 아래 문구가 뜨면서, 로컬 레디스가 추가됐다.

     

     

    • 로컬레디스를 클릭하면 아래 이미지와 같은 창으로 이동된다.

     

     

     

     

    레디스 특징

    • (RDB에 익숙한 사용자라면) 레디스는 테이블 개념이 없다. 접속한 레디스 서버는 통째로 테이블이라고 이해하면 된다.
    • 레디스 인사이트를 이용해 폴더 구조로 키-값쌍을 관리할 수 있다. 폴더구조는 특수문자(:)를 기준으로 만들어진다.

     

    • 아래와 같이 4가지 데이터를 추가해보자.
    system_1:object_1:1 키-값
    system_1:object_2:1 키-값
    system_1:object_2:2 키-값
    system_2:object_1:1 키-값

     

     

          • system_1, system_2에 총 4개의 레디스 데이터가 생성됐다. 

     

     

    • 오른쪽 위에 폴더 표시를 누르면, 시스템_1과 시스템_2를 폴더구조로 관리할 수 있다.

     

     

     

     

    로컬 레디스 설정 변경

    레디스의 설정을 변경하기 위해서는 redis.conf 파일을 찾아야 한다.

    # 로컬 레디스의 config 파일을 찾는다.
    # 결과: config_file:/opt/homebrew/etc/redis.conf
    redis-cli INFO | grep config_file
    
    # redis.conf파일로 이동
    vi /opt/homebrew/etc/redis.conf

     

    redis.conf 파일을 찾았으면, 설정 변경하고 싶은 내용을 바꿔해주면 된다.

     

     

    • 로컬 레디스 포트 변경하기

    vi /opt/homebrew/etc/redis.conf파일에서 "/port"을 검색한다. port 6379가 기본값이다. port 6379를 주석 처리 후 아래줄에 port 6380을 추가해준다.

     

    # 레디스 서버 재시작
    brew services restart redis
    
    # 레디스 로컬 서버 실행 확인하기
    # 결과: /opt/homebrew/opt/redis/bin/redis-server 127.0.0.1:6380
    # 6380 포트로 잘 떠있는 것을 확인할 수 있다.
    ps aux | grep redis
    
    # 레디스 cil 접속
    # redis-cli로 시작하면,
    # Could not connect to Redis at 127.0.0.1:6379: Connection refused라는 오류가 발생한다.
    redis-cli -p 6380

     

     

     

     

    • 로컬 레디스 로그 파일 위치

    vi /opt/homebrew/etc/redis.conf파일에서 "/logfile"를 검색한다. logfile ""값이 기본 값이다. ""로 되어있으면, 레디스는 표준 출력(stdout)으로 로그를 기록한다.

     

     

     

    로컬 레디스 로그 확인

    "redis-cli -p 6380 MONITOR" 명령어로 레디스 서버의 실시간 요청과 응답을 모니터링 할 수 있다.

    레디스 서버 로그 모니터링을 시작한 후 HGETALL system_1:object_2:1 이라는 명령한 것을 알 수 있다.

    c

    반응형

    댓글

Designed by Tistory.