Amazon SNS란 무엇인가요? - Amazon Simple Notification Service

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Amazon SNS란 무엇인가요?

Amazon Simple Notification Service(Amazon SNS)는 게시자(생산자)에서 구독자(소비자)로의 메시지 전송을 제공하는 완전관리형 서비스입니다. 게시자는 논리적 액세스 지점 및 커뮤니케이션 채널인 주제에 메시지를 전송하여 구독자와 비동기식으로 통신합니다.

작동 방법

SNS에서 게시자는 커뮤니케이션 채널 역할을 하는 주제에 메시지를 보냅니다. 주제는 다양한 유형의 구독자에게 메시지를 쉽게 전달할 수 있는 논리적 액세스 포인트입니다.

SNS 주제 구독자는 다음과 같이 사용 사례에 가장 적합한 다양한 엔드포인트를 사용하여 메시지를 수신할 수 있습니다.

  • Amazon SQS

  • Lambda

  • HTTP(S) 엔드포인트

  • 이메일

  • 모바일 푸시 알림

  • 모바일 문자 메시지(SMS)

  • Amazon Data Firehose

  • 서비스 공급자(예: Datadog, MongoDB, Splunk)

SNS는 Application-to-Application(A2A) 및 Application-to-Person(A2P) 메시징을 모두 지원하므로 다양한 애플리케이션 간에 메시지를 보내거나 휴대폰, 이메일 주소 등에 메시지를 직접 보낼 수 있는 유연성을 제공합니다.

Amazon SNS는 애플리케이션 간(A2A) 및 애플리케이션 간(A2P) 엔드포인트 모두에서 게시자의 메시지를 구독자에게 전달합니다. Lambda 함수, Amazon SQS 대기열, HTTP/S 엔드포인트 및 Amazon Kinesis Data Firehose와 같은 A2A 엔드포인트와 SMS, 모바일 푸시 알림 및 이메일을 포함한 A2P 엔드포인트를 보여 비동기식 이벤트 기반 통신을 위한 Amazon SNS의 유연성을 강조합니다.

Amazon SNS 액세스

선호하는 상호 작용 방법에 따라 콘솔 AWS CLI또는 AWS SDKs를 통해 Amazon SNS에 액세스하고 관리할 수 있습니다. 콘솔은 기본 작업을 위한 그래픽 인터페이스를 제공하는 반면, AWS CLI 및 SDKs 보다 복잡한 사용 사례를 위한 고급 구성 및 자동화 기능을 제공합니다.

  • Amazon SNS 콘솔은 주제 및 구독 생성, 메시지 송수신, 이벤트 및 로그 모니터링을 위한 편리한 사용자 인터페이스를 제공합니다.

  • AWS Command Line Interface (AWS CLI)를 사용하면 고급 구성 및 자동화 사용 사례를 위해 Amazon SNS API에 직접 액세스할 수 있습니다. 자세한 정보는 AWS CLI로 Amazon SNS 사용을 참조하세요.

  • AWS 는 다양한 언어로 SDKs 제공합니다. 자세한 내용은 SDK 및 도구 단원을 참조하세요.

일반적인 Amazon SNS 시나리오

이러한 일반적인 Amazon SNS 시나리오를 사용하여 확장 가능한 이벤트 기반 아키텍처를 구현하고 애플리케이션과 사용자 간의 안정적인 실시간 통신을 보장합니다.

애플리케이션 통합

팬아웃 시나리오는 SNS 주제에 게시된 메시지가 복제되어 Firehose 전송 스트림, Amazon SQS 대기열, HTTP(S) 엔드포인트 및 Lambda 함수와 같은 여러 엔드포인트로 푸시되는 경우입니다. 따라서 평행한 비동시적 처리가 가능합니다.

예를 들어, 사용자는 제품에 대한 주문이 생성될 때 SNS 주제에 메시지를 전송하는 애플리케이션을 개발할 수 있습니다. 그러면 해당 SNS 주제를 구독하는 SQS 대기열은 새 주문에 대해 동일한 알림을 수신합니다. SQS 대기열 중 하나에 연결된 Amazon Elastic Compute Cloud(Amazon EC2) 서버 인스턴스는 주문 처리 또는 이행을 처리할 수 있습니다. 또한 수신된 모든 주문을 분석하기 위해 다른 Amazon EC2 서버 인스턴스를 데이터 웨어하우스에 연결할 수 있습니다.

Amazon SNS의 팬아웃 시나리오로, 게시자의 단일 메시지가 Amazon SNS 주제로 전송된 다음 Amazon SQS 대기열과 같은 여러 엔드포인트로 복제됩니다. 각 Amazon SQS 대기열은 명령 처리를 처리하는 하나와 이벤트 기반 애플리케이션에 대한 병렬 비동기 메시지 전송을 보여주는 데이터 분석을 수행하는 다른 하나의 Amazon EC2 인스턴스로 메시지를 전달합니다.

또한 팬아웃을 사용하여 테스트 환경과 함께 프로덕션 환경으로 전송된 데이터를 복제할 수 있습니다. 기존 예를 확대해보면, 사용자는 다른 SQS 대기열에서 새로운 수신 주문에 대해 동일한 SNS 주제를 구독할 수 있습니다. 그러면 이 새로운 SQS 대기열을 테스트 환경에 연결함으로써 사용자는 개선을 계속하면서 프로덕션 환경에서 수신한 데이터를 사용하여 애플리케이션을 테스트할 수 있습니다.

중요

프로덕션 데이터를 테스트 환경에 보내기 전에 데이터 프라이버시 및 보안을 고려해야 합니다.

자세한 정보는 다음 리소스를 참조하세요.

애플리케이션 알림

애플리케이션 및 시스템 알림은 미리 정의된 임계값에 의해 트리거되는 알림입니다. Amazon SNS에서는 SMS와 이메일을 통해 지정된 사용자에게 이러한 알림을 보낼 수 있습니다. 예를 들어 Amazon EC2 Auto Scaling 그룹에 대한 특정 변경, Amazon S3 버킷에 업로드된 새 파일 또는 Amazon CloudWatch에서 위반된 지표 임계값과 같은 이벤트가 발생하면 즉시 알림을 받을 수 있습니다. 자세한 정보는 Amazon CloudWatch 사용 설명서Amazon SNS 알림 설정을 참조하세요.

사용자 알림

Amazon SNS에서는 개인 또는 그룹에 푸시 이메일 메시지와 문자 메시지(SMS 메시지)를 전송할 수 있습니다. 예를 들어 사용자는 전자 상거래 주문 확인을 사용자 알림으로 보낼 수 있습니다. Amazon SNS를 사용하여 SMS 메시지를 전송하는 방법에 대한 자세한 정보는 Amazon SNS를 사용한 모바일 문자 메시지에서 확인하세요.

모바일 푸시 알림

모바일 푸시 알림을 통해 메시지를 모바일 앱으로 바로 전송할 수 있습니다. 예를 들어 Amazon SNS를 사용하여 앱에 업데이트 알림을 전송할 수 있습니다. 알림 메시지는 업데이트를 다운로드 및 설치하기 위한 링크를 포함할 수 있습니다. Amazon SNS를 사용하여 푸시 알림 메시지를 전송하는 방법에 대한 자세한 정보는 Amazon SNS로 모바일 푸시 알림 전송에서 확인하세요.

Amazon SNS 요금

Amazon SNS에는 선결제 비용이 없습니다. 게시하는 메시지 수, 전송하는 알림 수, 주제 및 구독 관리를 위한 추가 API 호출에 따라 요금을 지불합니다. 전송 요금은 엔드포인트 유형에 따라 다릅니다. Amazon SNS 프리 티어를 통해 무료로 시작할 수 있습니다. 자세한 정보는 Worldwide SMS 요금을 참조하세요.