

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

# Amazon SNS란 무엇인가요?
<a name="welcome"></a>

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

## 작동 방식
<a name="how-it-works"></a>

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 엔드포인트 및 Data Firehose와 같은 A2A 엔드포인트와 SMS, 모바일 푸시 알림 및 이메일을 포함한 A2P 엔드포인트를 보여 비동기식 이벤트 기반 통신을 위한 Amazon SNS의 유연성을 강조합니다.](http://docs.aws.amazon.com/ko_kr/sns/latest/dg/images/sns-delivery-protocols.png)


## Amazon SNS 액세스
<a name="welcome-accessing"></a>

선호하는 상호 작용 방법에 따라 콘솔 AWS CLI또는 AWS SDKs를 통해 Amazon SNS에 액세스하고 관리할 수 있습니다. 콘솔은 기본 작업을 위한 그래픽 인터페이스를 제공하는 반면, AWS CLI 및 SDKs 보다 복잡한 사용 사례를 위한 고급 구성 및 자동화 기능을 제공합니다.
+ 이 [Amazon SNS 콘솔](https://console.aws.amazon.com/sns/v3/home)은 주제 및 구독 생성, 메시지 송수신, 이벤트 및 로그 모니터링을 위한 편리한 사용자 인터페이스를 제공합니다.
+  AWS Command Line Interface (AWS CLI)를 사용하면 고급 구성 및 자동화 사용 사례를 위해 Amazon SNS API에 직접 액세스할 수 있습니다. 자세한 정보는 [AWS CLI로 Amazon SNS 사용](https://docs.aws.amazon.com/cli/latest/userguide/cli-services-sns.html)을 참조하세요.
+ AWS 는 다양한 언어로 SDKs 제공합니다. 자세한 내용은 [ SDK 및 도구](https://aws.amazon.com/getting-started/tools-sdks/) 단원을 참조하세요.

## 일반적인 Amazon SNS 시나리오
<a name="sns-common-scenarios"></a>

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

### 애플리케이션 통합
<a name="SNSFanoutScenario"></a>

*팬아웃* 시나리오는 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 인스턴스로 메시지를 전달합니다.](http://docs.aws.amazon.com/ko_kr/sns/latest/dg/images/sns-fanout.png)


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

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

자세한 정보는 다음 리소스를 참조하세요.
+ [Firehose 전송 스트림으로 팬아웃](sns-firehose-as-subscriber.md)
+ [자동 처리를 위해 Lambda 함수에 Amazon SNS 알림 팬아웃](sns-lambda-as-subscriber.md)
+ [비동기 처리를 위해 Amazon SNS 알림을 Amazon SQS 대기열에 팬아웃](sns-sqs-as-subscriber.md)
+ [HTTPS 엔드포인트에 Amazon SNS 알림 팬아웃](sns-http-https-endpoint-as-subscriber.md)
+ [ Amazon SNS를 사용한 이벤트 기반 컴퓨팅 및 AWS 컴퓨팅, 스토리지, 데이터베이스 및 네트워킹 서비스](https://aws.amazon.com/blogs/compute/event-driven-computing-with-amazon-sns-compute-storage-database-and-networking-services/) 

### 애플리케이션 알림
<a name="SNSAlertsScenario"></a>

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

### User Notifications
<a name="SNSPushMessaging"></a>

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

### 모바일 푸시 알림
<a name="SNSMobilePushScenario"></a>

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

## Amazon SNS 요금
<a name="welcome-pricing"></a>

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