[클라우드] AWS - SQS

이정훈·2023년 3월 21일
0

클라우드

목록 보기
14/14
post-thumbnail
  • AWS 에서는
    Amazon SQS는 처리량이 높은 시스템 간 메시징을 위한 대기열을 제공합니다. 대기열을 사용하여 과중한 프로세스를 분리하고 작업의 버퍼링과 배치 처리를 지원할 수 있습니다. Amazon SQS는 마이크로서비스와 서버리스 애플리케이션에서 메시지를 처리할 때까지 메시지를 저장합니다.
  • kafka 같다보자!

만들기

  • 생성해주면 된다
  • first in, first out 이건 돈이 나가니깐, 일단은 표준 그냥 무작위로 보내준다.
  • 엑세스 정책에서 모두 허용해주도록 수정해준다.
  • 엑세스 정책은 고급설정에서 변경해도 되지만, 정책을 만들어서 사용할 수 도 있다.

보내기

import boto3

sqs = boto3.client('sqs')

queue_url = '[URL 입력]'

response = sqs.send_message(
    QueueUrl=queue_url,
    MessageBody=('아르뇨용?')
)

print(response['MessageId'])

받기

import boto3

sqs = boto3.client('sqs')

queue_url = '[URL 입력]'

response = sqs.receive_message(
    QueueUrl=queue_url
)

message = response['Messages'][0]
receipt_handle = message['ReceiptHandle']

sqs.delete_message(
    QueueUrl=queue_url,
    ReceiptHandle=receipt_handle
)
print('Received and deleted message: %s' % message)

  • 보내기에서는 '아르뇨옹?'을 보냈엇는데 실행하니깐 '안뇽?' 이 왔다...
  • 내가 지금 사용하고 있는 서비스가 무작위로 보내주는 것이고 나는 이전에 '안뇽?'을 보내놨었기 때문이다.

REST API로 메시지 송수신

  • 송신
https://[큐이름 URL 입력]?Action=SendMessage&MessageBody=메시지
  • 수신
https://[큐이름 URL 입력]?Action=ReceiveMessage

profile
싱숭생숭늉

0개의 댓글