Simple Notification Service
SNS (Simple Notification Service) is a web service that makes it easy to setup, operate, and send notifications from the cloud.
It provides developers with a highly-scalable, flexible, and cost-effective capability to publish messages from an application and immediately deliver them to subscriptions or other applications.
Push Notifications to Apple, Google, Fire OS, and Windows devices, as Android devices in China with Baidu Cloud Push.
- Besides pushing Cloud Notification directly to mobile devices, Amazon SNS can deliver notifications by SMS text message or email, to SQS queues, or to any HTTP endpoint.
- SNS notifications can also trigger Lambda functions: When a message is published to an SNS topic that has a Lambda function subscribed to it, the Lambda function is invoked with the payload of the published message. The Lambda function receives the message payload as an input parameter and can manipulate the information in the message, publish the message to another SNS topic, or send the message to other AWS services.
SNS Topics
SNS allows you to group multiple recipients using topics. A topic is an "access point" for allowing recipients to dynamically subscribe for identical copies of the same notification.
One topic can support deliveries to multiple endpoint types; for example, you can group together iOS, Android, and SMS recipient. When you publish once to a topic, SNS delivers appropriately formatted copies of your message to each subscriber.
To prevent message from being lost, all message published to SNS are stored redundantly across multiple AZs.
SNS Benefits
- Instantaneous, push-based delivery (no polling)
- Simple APIs and easy integration with applications
- Flexible message delivery over multiple transport protocols
- Inexpensive, pay-as-you-go model with no up-front costs
- Web-based AWS Management Console offers the simplicity of a point-and-click interface.
SNS vs. SQS
- Both Messaging Services in AWS
- SNS - Push-based
- SQS - Pull-based (polls)
SNS Pricing
- User pays $0.50 per 1 million SNS requests
- $0.06 per 100,000 Notifications delivered over HTTP
- $0.75 per 100 Notification deliveries over SMS
- $2.00 per 100,000 Notifications deliveries over Email
Amazon SNS follows the "publish-subscribe" (pub-sub) messaging paradigm, with notifications being delivered to clients using a "push" mechanism that eliminates the need to periodically check or "poll" for new information and updates.
With simple APIs requiring minimal up-fron development effort, no maintenance or management overhead and pay-as-you-go pricing, Amazon SNS gives developers an easy mechanism to incorporate a powerful notification system with their applications.
SNS Exam Tips
- SNS is a scalable and highly-available notification service which allows you to send publish notifications from the cloud.
- Variety of message formats supported: SMS text message, email, SQS queues, any HTTP endpoint.
- Pub-sub model whereby users subscribe to topics
- It is a push mechanism, rather than a pull (poll) mechanism.