관리 메뉴

FU11M00N

node.js에서 aws ec2 redis 연동하기 본문

Programming

node.js에서 aws ec2 redis 연동하기

호IT 2023. 2. 24. 00:22

해당 게시물에선 AWS EC2 인스턴스 안에 설치되어있는 docker 컨테이너에 redis를 설치해, node.js에서 보낸 데이터를 저장해 보겠습니다.

 

 

먼저 node.js 에서 npm i redis 명령어를 입력하여 Redis를 설치합니다.

$ npm i redis
const redis = require('redis')

 

host 에는 aws 공인 ip를 작성해 주시면 됩니다.

( * redis v4부턴 client.connect()를 선언해야 에러가 발생하지 않습니다. )

      client = redis.createClient({
         socket: {
            port: 6379,
            host: 'aws 퍼블릭 ip',
         },
         password: process.env.REDIS_PASSWORD,
      });
      await client.connect();

 

아래 사진은 node의 createClient 함수 사용법입니다.

해당 링크를 참고해 필요한 설정들을 하면 됩니다.

https://github.com/redis/node-redis/blob/HEAD/docs/client-configuration.md

 

 

이후 인스턴트에서 보안 그룹 설정에 인바운드 규칙 중 redis 포트번호(6379)를 허용해 줍니다.

 

 

아래의 코드는 set 샘플 코드입니다.

exports.RedisTest = async (req, res, next) => {
   let client;
   try {
      client = redis.createClient({
         socket: {
            port: 6379,
            host: 'aws 퍼블릭 ip',
         },
         password: process.env.REDIS_PASSWORD, // Redis 패스워드를 적용해 주었을 시 password 지정
      });
      client.connect();
      client.set('key', 'value', (err, reply) => {
         console.log(reply);
      });
   } catch (error) {
      console.error(error);
   } finally {
      if (client) {
         client.quit(); // Redis 클라이언트 객체 종료
      }
   }
};

 

샘플코드를  실행한 후 redis-cli에서 " keys * " 명령어를 입력하여 데이터가 저장되는 것을 확인합니다.

'Programming' 카테고리의 다른 글

Docker 내 Redis 환경 구축  (0) 2023.02.23
Comments