Dev/Infra & Module

Amazone SNS

zemba 2022. 8. 4. 13:39
반응형
SMALL

Amazon Simple Notification Service(Amazon SNS)는 게시자에서 구독자(생산자소비자라고도 함)로 메시지를 전송하는 관리형 서비스입니다. 게시자는 논리적 액세스 지점 및 커뮤니케이션 채널인 주제에 메시지를 전송하여 구독자와 비동기식으로 통신합니다. 클라이언트는 SNS 주제를 구독하고 와 같이 지원되는 엔드포인트 유형을 사용하여 게시된 메시지를 수신할 수 있습니다.


Topic Subscriber Protocol

  • Amazon Kinesis Data Firehose
  • Amazon SQS
  • AWS Lambda
  • HTTP
  • 이메일
  • 모바일 푸시 알림
  • 모바일 문자 메시지(SMS)

Topic을 생성해서 발행하면 해당 토픽을 Subscriber가 어떠한 방식으로 수신할지 Protocol을 정하는 구조.

AWS SNS 요금정보

 

Amazon Simple Notification Service(SNS) 요금 | 메시징 서비스 | AWS

 

aws.amazon.com

 

SNS 사용 Flow

  • AWS 계정 및 IAM 관리자 사용자 생성
    • AmazonSNSFullAccess 권한 필요
    • 사용자에 대한 Access Key 필요
  • Topic 생성 
    • FIFO 또는 표준을 선택하여 생성
      • 큰차이점은 FIFO면 SQS로만 구독 가능함
      • 순서가 보장되는 Queue니까 그게 당연할듯함..
    • 표준일때는 순서에 대한 판단을 할수 있는 데이터를 전송해야할듯.
    • Topic에 대한 Subscriber 등록
      • Subscriber가 등록함. 어떤 프로토콜로 수신할지를 결정함.
  • Topic에 메세지 발행
    • String으로만 전송가능함.
    • Json 형태의 데이터를 전송할때는 escape 처리가 필요할듯함.

메세지 전송 재시도

 

Amazon SNS 메시지 전송 재시도 - Amazon Simple Notification Service

Amazon SNS 메시지 전송 재시도 Amazon SNS에서는 각 전송 프로토콜에 대한 전송 정책을 정의합니다. 서버 측 오류가 발생할 경우(즉, 구독 엔드포인트를 호스팅하는 시스템을 사용할 수 없게 될 경우)

docs.aws.amazon.com

DeadLetter

  • SQS를 생성하여 별도로 데드레터를 관리함.
  • SQS토픽에 발행 이후 SQS의 속성을 따라감
반응형
LIST