자바스크립트용 레디스

자바스크립트용 레디스

2022-10-19 last update

7 minutes reading redis javascript node programming


레디스 소개



Redis는 캐시, 메시지 브로커 및 스트리밍 엔진에 사용되는 오픈 소스, 인메모리 및 단일 스레드 데이터베이스입니다. 가장 인기 있는 키-값 데이터 저장소입니다. 문자열, 해시, 목록, 집합, 정렬된 집합, 비트맵 등과 같은 데이터 구조를 제공합니다.

Redis는 Salvatore Sanfilippo라는 이탈리아 개발자가 2009년 초에 시작했습니다. C로 작성되었으며 BSD에 따라 사용이 허가되었습니다.

레디스 설치


  • Ubuntu에 설치

  • 우분투에서는 공식 packages.redis.io APT 저장소를 사용하여 Redis를 설치할 수 있습니다.

    curl -fsSL https://packages.redis.io/gpg | sudo gpg --dearmor -o /usr/share/keyrings/redis-archive-keyring.gpg
    
    echo "deb [signed-by=/usr/share/keyrings/redis-archive-keyring.gpg] https://packages.redis.io/deb $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/redis.list
    
    sudo apt-get update
    sudo apt-get install redis
    
    


  • Mac에 설치

  • Mac에서는 brew 패키지 관리자를 사용할 수 있습니다.

    brew install redis
    
    


    자바스크립트용 레디스



    Javascript 세계에는 Redis와 연결할 수 있는 몇 가지 패키지가 있습니다. 패키지 중 몇 가지를 예를 들면 다음과 같습니다.
  • 노드-레디스
  • 아이오레디스
  • 노드 요청
  • connect-redis

  • 우리는 지금 Node-Redis를 사용할 것입니다. node-Redis 클라이언트의 장점 중 하나는 연결이 준비되기 전에 보내는 모든 명령을 자동으로 대기열에 넣는 것입니다.

    Node-Redis를 설치하려면 -

    npm install redis
    
    


    Node-Redis 패키지가 설치되어 있으므로 프로젝트로 가져올 수 있습니다.

    const redis = require('redis');
    
    


    Redis에 연결하려면 Redis 클라이언트를 생성하기 위한 클라이언트가 필요합니다. Redis의 createClient 함수를 사용합니다. 이 함수는 Redis 호스트 및 포트의 개체를 사용합니다.

    const client = redis.createClient(
      {
        host: process.env.REDIS_HOST,
        port: process.env.REDIS_PORT
      }
    );
    
    


    Redis가 로컬 시스템에 설치된 경우 Redis 호스트는 localhost이고 Redis 포트는 6379가 됩니다.

    이제 클라이언트가 생성되었으므로 연결 기능을 사용하여 Redis에 연결할 수 있습니다.

    client.on('connect', () => {
      console.log('connected to redis');
    });
    client.on('error', (err) => {
      console.log('error: ', err);
    });
    
    client.connect();
    
    


    여기서 client.on은 Redis가 연결되었는지 여부를 테스트하는 데 사용됩니다.

    레디스: 안녕하세요 단어



    이 간단한 Hello 단어 문제를 작성하기 위해 Redis의 GET 및 SET 명령을 사용합니다. 기타Redis commands

    SET 명령 - SET 명령은 Redis 데이터베이스에 키와 값을 넣습니다. 키가 데이터베이스에 이미 있는 경우 유형에 관계없이 기존 값을 덮어씁니다. 키와 값이 Redis 데이터베이스에 성공적으로 추가되면 'OK'를 반환합니다.

    레디스 명령




    SET mykey "Hello"
    
    


    자바스크립트 코드




    client.set('name', 'vinayak').then((res) => {
      console.log('res: ', res);
    }).catch((err) => {
      console.log('err: ', err);
    });
    
    


    산출

    res: OK
    
    


    GET 명령 - GET 명령은 주어진 키를 기반으로 값을 검색하고 키가 존재하지 않으면 nil을 반환합니다.

    GET mykey
    
    


    자바스크립트 코드




    client.get('name').then((reply) => {
      console.log(reply);
    });
    
    


    산출

    vinayak
    
    


    이 두 명령을 사용하여 첫 번째 자바스크립트 프로그램을 작성합니다.

    const redis = require('redis');
    require('dotenv').config();
    
    const client = redis.createClient(
      {
        host: process.env.REDIS_HOST,
        port: process.env.REDIS_PORT
      }
    );
    
    client.on('connect', () => {
      console.log('connected to redis');
    });
    client.on('error', (err) => {
      console.log('error: ', err);
    });
    
    client.connect();
    
    client.set('name', 'vinayak').then((res) => {
      console.log('res: ', res);
    }).catch((err) => {
      console.log('err: ', err);
    });
    
    client.get('name').then((reply) => {
      console.log(reply);
    });
    client.quit();
    
    


    산출

    connected to redis
    res: OK
    vinayak