CreateSQS
1 Amazon SQS 설정 가이드
- Amazon Simple Queue Service (SQS)는 분산 시스템의 구성 요소 간 메시지를 안정적으로 전송, 저장, 수신할 수 있는 완전 관리형 메시지 대기열 서비스입니다.
- [[SQS]] 참고
- SQS를 효과적으로 활용하기 위해 설정할 수 있는 몇 가지 중요한 옵션에 대해 알아보겠습니다.
2 Delay Queue
- Delay Queue는 메시지가 큐에 도착한 후 일정 시간이 지나야 소비자가 접근할 수 있도록 지연시키는 기능입니다.
2.1 Delay Queue 주요 기능
- 메시지 지연: 메시지를 큐에 추가한 후 즉시 처리하지 않고 지정된 시간이 지난 후에 처리할 수 있습니다.
- 큐 수준 지연: 큐 생성 시 지연 시간을 설정하여 해당 큐의 모든 메시지에 대해 동일한 지연 시간을 적용할 수 있습니다.
- 메시지 수준 지연: 개별 메시지마다 지연 시간을 설정하여 큐의 다른 메시지와는 별도로 지연 시간을 설정할 수 있습니다.
2.2 Delay Queue 설정 방법
2.2.1 콘솔을 사용한 큐 수준 지연 설정
- AWS Management Console에 로그인합니다.
- Amazon SQS 콘솔로 이동합니다.
- "Create queue" 버튼을 클릭하여 새 큐를 생성합니다.
- 큐 이름을 입력하고 "Delay Seconds" 필드에 원하는 지연 시간을 설정한 후 "Create Queue"를 클릭합니다.
2.2.2 클라우드포메이션 템플릿을 사용한 큐 수준 지연 설정
Resources:
MyQueue:
Type: "AWS::SQS::Queue"
Properties:
QueueName: "MyDelayQueue"
DelaySeconds: 60
- 다음은 CloudFormation 템플릿을 사용하여 SQS 큐를 생성하는 예제입니다
- 위 예제에서는 CloudFormation 템플릿을 사용하여 "MyDelayQueue"라는 이름의 SQS 큐를 생성하고, 큐 에 추가된 모든 메시지가 60초 동안 지연됩니다.
2.2.3 콘솔을 사용한 메시지 수준 지연 설정
- AWS Management Console에 로그인합니다.
- Amazon SQS 콘솔로 이동합니다.
- 메시지를 보내려는 큐를 선택합니다.
- "Send and receive messages"를 클릭합니다.
- "Message body"에 메시지를 입력하고 "Delay delivery" 필드에 원하는 지연 시간을 입력한 후 "Send message"를 클릭합니다.
2.2.4 AWS CLI를 사용한 메시지 수준 지연 설정
aws sqs send-message --queue-url https://sqs.us-east-1.amazonaws.com/123456789012/MyQueue --message-body "Hello World" --delay-seconds 30