如何将来自 Amazon SNS 的失败消息保存到 Amazon S3
How to save failed messages from Amazon SNS into Amazon S3
我想知道是否可以在特定时间 window 将所有未确认的消息从 SNS 主题保存到 S3 文件。这些消息不一定需要遵循S3文件中的原始顺序,一个时间戳属性就足够了。
没有将消息从 Amazon SNS 保存到 Amazon S3 的内置功能。
不过,本周 AWS 推出了适用于 Amazon SNS 的死信队列。
来自Amazon SNS Adds Support for Dead-Letter Queues (DLQ):
You can now set a dead-letter queue (DLQ) to an Amazon Simple Notification Service (SNS) subscription to capture undeliverable messages. Amazon SNS DLQs make your application more resilient and durable by storing messages in case your subscription endpoint becomes unreachable.
Amazon SNS DLQs are standard Amazon SQS queues.
因此,如果 Amazon SNS 无法传送消息,它可以自动将其发送到 Amazon SQS 队列。您可以稍后 review/process 那些失败的消息。例如,您可以创建一个 AWS Lambda 函数,当消息到达死信队列时触发该函数。然后该函数可以将消息存储在 Amazon S3 中。
如果您只想将发布到您的 SNS 主题的所有消息保存在 S3 存储桶中,那么您可以简单地订阅您的 SNS 主题 AWS Event Fork Pipeline for Storage & Backup:
** 2021 年 1 月更新:SNS 现在支持将 Kinesis Data Firehose 作为本机订阅类型。 https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sns-adds-support-for-message-archiving-and-analytics-via-kineses-data-firehose-subscriptions/
我想知道是否可以在特定时间 window 将所有未确认的消息从 SNS 主题保存到 S3 文件。这些消息不一定需要遵循S3文件中的原始顺序,一个时间戳属性就足够了。
没有将消息从 Amazon SNS 保存到 Amazon S3 的内置功能。
不过,本周 AWS 推出了适用于 Amazon SNS 的死信队列。
来自Amazon SNS Adds Support for Dead-Letter Queues (DLQ):
You can now set a dead-letter queue (DLQ) to an Amazon Simple Notification Service (SNS) subscription to capture undeliverable messages. Amazon SNS DLQs make your application more resilient and durable by storing messages in case your subscription endpoint becomes unreachable.
Amazon SNS DLQs are standard Amazon SQS queues.
因此,如果 Amazon SNS 无法传送消息,它可以自动将其发送到 Amazon SQS 队列。您可以稍后 review/process 那些失败的消息。例如,您可以创建一个 AWS Lambda 函数,当消息到达死信队列时触发该函数。然后该函数可以将消息存储在 Amazon S3 中。
如果您只想将发布到您的 SNS 主题的所有消息保存在 S3 存储桶中,那么您可以简单地订阅您的 SNS 主题 AWS Event Fork Pipeline for Storage & Backup:
** 2021 年 1 月更新:SNS 现在支持将 Kinesis Data Firehose 作为本机订阅类型。 https://aws.amazon.com/about-aws/whats-new/2021/01/amazon-sns-adds-support-for-message-archiving-and-analytics-via-kineses-data-firehose-subscriptions/