繁体   English   中英

将消息从AWS SNS发布到SQS

[英]Publishing messages from AWS SNS to SQS

由于SQS受到限制,无法支持多个使用者并行处理消息。 即。 由过程1选择的m1至m10和由过程2选择的m11至m20,依此类推。 由于SQS不支持此功能,因此我考虑使用SNS + SQS(已订阅队列列表),其中每个进程都侦听其特定的队列并处理记录。

是否可以在SNS和SQS之间设置诸如循环的选项,以便SNS以循环方式将消息分发到SQS,以便每个队列将具有唯一的消息而不会在队列之间重复?

提前致谢!

问候,库玛

如果您不希望SNS发布到所有订阅者(队列),请查看SNS消息过滤 消息过滤使您可以定义控制哪些订户接收给定消息的逻辑。

默认情况下,Amazon SNS主题的订阅者会收到发布到该主题的每条消息。 为了只接收消息的子集,订阅者将过滤策略分配给主题订阅。

过滤策略是一个简单的JSON对象。 该策略包含定义订户接收哪些消息的属性。 当您将消息发布到主题时,Amazon SNS会将消息属性与每个主题的订阅的过滤器策略中的属性进行比较。 如果属性之间匹配,则Amazon SNS会将消息发送给订阅者。 否则,Amazon SNS会跳过订户而不向其发送消息。 如果订阅缺少过滤策略,则订阅将接收发布到其主题的每条消息。

除非您使用SQS FIFO队列,否则关于SQS的局限性不支持多个并行使用者的假设是不正确的

标准SQS确实支持多个并行使用者。

关于SQS FIFO队列,它们一次不将来自同一消息组的消息提供给一个以上的使用者。 但是,如果您的FIFO队列具有多个消息组,则可以利用并行使用者,从而允许Amazon SQS将来自不同消息组的消息提供给不同的使用者。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM