Posted On: Mar 30, 2023
Amazon Simple Notification Service (SNS) has introduced an open-source Extended Client Library for Python that enables you to publish and deliver large message payloads. Previously, only the Extended Client Library for Java was available. This library is useful for messages that are larger than 256KB, up to a maximum of 2GB. The library automatically saves the actual payload to an Amazon S3 bucket and publishes the reference of the stored Amazon S3 object to the Amazon SNS topic.
Amazon SNS is a messaging service for Application-to-Application (A2A) and Application-to-Person (A2P) communication. The A2A functionality provides high-throughput, push-based, many-to-many messaging between distributed systems, microservices, and event-driven serverless applications. These applications include Amazon Simple Queue Service, Amazon Kinesis Data Firehose, AWS Lambda, and HTTP/S endpoints. The A2P functionality enables you to communicate with your customers via mobile text messages (SMS), mobile push notifications, and email notifications. Now, with the Extended Client Library for Python, you can publish and deliver messages with payloads up to 2GB by having them automatically stored in Amazon S3 buckets.
Large payload transmissions are billed as one Amazon SNS request and one Amazon S3 request, with billing for the payload based on the amount of data stored in Amazon S3.
To learn more about the Extended Client Library for Python, see the following:
- Large message payloads in the Amazon SNS Developer Guide
- Extended Client Library on GitHub