Amazon Simple Notification Service (Amazon SNS)

Amazon Simple Notification Service (Amazon SNS) - fully managed service which provides a publish/subscribe messaging method approach and sends notifications in two ways: application-to-application (A2A) and application-to-person (A2P). Service can send notifications to other AWS Services of https endpoints or directly to client customers as SMS text, push notifications, or email.

Key definitions for Amazon Simple Notification Service (Amazon SNS):

  • Two types of queue: standard and fifo

    Service offers two types of queue: standard and fifo.

    • Standard
      • almost unlimited TPS (transactions per second)
      • at least one delivery (can be more)
      • without strict respect of message order
      • multiple subscription types: application-to-application (A2A) endpoints (Amazon Kinesis Data Firehose, Amazon SQS, HTTPS, AWS Lambda) or application-to-person (A2P) endpoints (mobile push, SMS and email).
      • message fanout: client can create up to 100,000 topics and each topic can have up to 12.5M subscriptions.
    • Fifo
      • high throughput, up to 300 TPS for single actions and up to 3000 for batch actions
      • exactly one delivery of message
      • First-In-First-Out approach for message order
      • SNS FIFO subscriptions: messages can be delivered to Amazon SNS FIFO queues.
      • message fanout: Each AWS account supports up to 1,000 FIFO topics and each topic supports up to 100 subscriptions.

  • Service integrations

    Service integrates with big variety of event sources (such as AWS EC2, S3, RDS and CloudWatch ) and destinations (for example, AWS Lambda, SQS, Kinesis Data Firehouse and HTTP/S endpoints)

  • Limits

    Limits for messages by default up to 256KB. With Amazon SNS Extended Client Library payload can be extended to 2GB (library store payload in S3 Bucket and publish reference to object in SNS message).

  • Batch functions

    Service supports batch actions: send, receive or delete up to 10 messages or 256 KB

  • Filtering

    Amazon SNS supports subscribing with message filtering from the box. Subscriber can create a policy for messages in which it is interested.

  • Delivery

    Amazon SNS supports cross-region and cross-account message delivery

  • Durability

    Services provide message durability, using multiple mechanisms. Messages are stored in multiple, geographically-separated servers and data centers. If a subscriber is not available, Amazon SNS executes a message delivery retry policy. To not lose any message, clients can use a dead-letter queue from Amazon SQS. Even more, clients can configure Amazon Kinesis Data Firehose delivery streams to Amazon SNS topics, which allows messages to be sent to durable destinations, for example, Amazon S3 buckets or Amazon Redshift tables.

  • Encryption

    Amazon SNS supports encryption from the box. Simple and easy integration with AWS KMS provides protection of the contents of messages in Amazon SNS topics. The messages are stored in encrypted form. Service decrypts and sends messages only to authorized subscribers.

  • VPC endpoints

    Service supports VPC Endpoints (VPCE) via AWS PrivateLink. This gives the ability to privately publish messages to Amazon SNS, from an Amazon Virtual Private Cloud (VPC), without sending messages over the public internet. This feature provides additional security and helps support advanced data privacy.

  • Data protection

    Amazon SNS also supports message data protection. Clients can define data protection policies that can find and protect sensitive data that is transmitted via topics. This can help to simplify architecture of the system by removing data protection logic from the system itself. And also help to support compliance objectives, such as the Health Insurance Portability and Accountability Act (HIPAA), General Data Privacy Regulation (GDPR), Payment Card Industry Compliance (PCI), and Federal Risk and Authorization Management Program (FedRAMP). Messages can be audited to determine how much sensitive data they contain, prevent them from being delivered to subscribers via blocking, or via rewriting or masking specific data in the payload.

  • Message types

    Service delivers:

    • SMS text messages to 200+ countries.
    • Push notifications to iOS, Android, Fire, Windows, and Baidu devices
    • Email notifications

  • Sandbox

    Amazon SNS has a sandbox for easy and simple validation of workloads before launching them into the production environment.

Service integrates with:

Usage use cases

  • Application email notification.

    Sending emails from Web Applications

  • Bulk emails.

    Bulk emails for subscribers

  • Email auto responses.

    Generate automated email responses

  • Mailing List Management.

    Management of email subscribers

  • Integration with other AWS services.

    Usage email notification for other integrated services

  • Email processing.

    Inbound Email Processing

FAQ for Amazon Simple Notification Service (Amazon SNS)

  • What is Amazon SES?

    Amazon SES is a cloud-based email service that allows users to send emails from their apps, websites, or any other service in the cloud that can send email
  • What can it be used for?

    It can be used for sending both single messages and bulk emails, as well as for managing email lists and processing inbound emails
  • What are the two main account modes in Amazon SES?

    The two main account modes in Amazon SES are sandbox mode and production mode
  • Are there any restrictions on sandbox mode?

    Yes. They are:
    • Only authenticated email addresses and domains as well as the Amazon SES mailbox simulator are eligible to receive messages from you
    • During a 24-hour period, a maximum of 200 messages may be sent
    • One message can be sent at most once every second
    • You and the delegate sender are not authorized to send emails to unverified email addresses
    • Bulk actions and SES API calls for managing suppression lists are disabled for account-level suppression