[typescript] 타입스크립트로 AWS SDK를 사용하여 SQS 메시지 전송 및 수신하기

AWS SDK는 Amazon Web Services(AWS)와 상호 작용하기 위한 편리한 도구입니다. 이번 포스트에서는 타입스크립트와 AWS SDK를 사용하여 Amazon Simple Queue Service(SQS)를 통해 메시지를 전송하고 수신하는 방법에 대해 알아보겠습니다.

1. AWS SDK 설치 및 환경 설정

먼저 프로젝트 디렉토리에서 AWS SDK를 설치합니다.

npm install aws-sdk

AWS 계정의 액세스 키와 시크릿 액세스 키가 필요합니다. 이 정보는 AWS IAM(Identity and Access Management)에서 액세스 키를 생성하여 확인할 수 있습니다. 해당 정보를 환경 변수로 설정하거나 AWS SDK 구성 파일에 저장합니다.

// AWS SDK 구성
import AWS from 'aws-sdk';

AWS.config.update({
  region: 'your-region',
  accessKeyId: 'your-access-key',
  secretAccessKey: 'your-secret-access-key'
});

2. 메시지 전송

다음은 SQS에 메시지를 전송하는 방법입니다.

// SQS 모듈 로드
const sqs = new AWS.SQS({ apiVersion: '2012-11-05' });

// 메시지 전송
const sendMessageParams = {
  MessageBody: 'This is a test message',
  QueueUrl: 'your-queue-url'
};

sqs.sendMessage(sendMessageParams, (err, data) => {
  if (err) {
    console.log('Error', err);
  } else {
    console.log('Success', data.MessageId);
  }
});

3. 메시지 수신

이제 SQS에서 메시지를 수신하는 방법을 살펴보겠습니다.

// 메시지 수신
const receiveMessageParams = {
  MaxNumberOfMessages: 1,
  QueueUrl: 'your-queue-url',
  VisibilityTimeout: 20,
  WaitTimeSeconds: 0
};

sqs.receiveMessage(receiveMessageParams, (err, data) => {
  if (err) {
    console.log('Receive Error', err);
  } else if (data.Messages) {
    console.log('Received Message', data.Messages[0].Body);
  }
});

이제 타입스크립트와 AWS SDK를 사용하여 SQS 메시지를 전송하고 수신하는 방법을 알게 되었습니다. 이를 통해 안정적이고 확장 가능한 메시지 큐 시스템을 구축할 수 있습니다.

더 자세한 정보는 AWS SDK for JavaScript 공식 문서를 참고하시기 바랍니다.