6.7. SNS FIFO
支持 SNS FIFO。在创建 SQS 队列时,您将订阅 SNS 主题很重要点,您需要使 SNS Topic 发送消息发送到 SQS Queue。
示例
假设您创建了名为 Order.fifo
的 SNS FIFO 主题,以及名为 QueueSub.fifo
的 SQS Queue。
在 QueueSub.fifo
的访问策略中,您应该提交类似如下的内容:
{ "Version": "2008-10-17", "Id": "__default_policy_ID", "Statement": [ { "Sid": "__owner_statement", "Effect": "Allow", "Principal": { "AWS": "arn:aws:iam::780560123482:root" }, "Action": "SQS:*", "Resource": "arn:aws:sqs:eu-west-1:780560123482:QueueSub.fifo" }, { "Effect": "Allow", "Principal": { "Service": "sns.amazonaws.com" }, "Action": "SQS:SendMessage", "Resource": "arn:aws:sqs:eu-west-1:780560123482:QueueSub.fifo", "Condition": { "ArnLike": { "aws:SourceArn": "arn:aws:sns:eu-west-1:780410022472:Order.fifo" } } } ] }
这是使订阅正常工作的关键步骤。
6.7.1. SNS Fifo Topic Message group Id Strategy and message Deduplication Id Strategy
向 FIFO 主题发送某个时,您需要始终设置消息组 Id 策略。
如果在 SNS Fifo 主题上启用了基于内容的消息 deduplication,则无需设置消息 deduplication id 策略,否则您必须设置它。