【发布时间】:2026-01-07 12:15:02
【问题描述】:
我有一个验证服务,它接收验证请求并将它们发布到 SQS 队列。现在根据验证请求的类型,我想将消息转发到该特定服务。
所以基本上,我有一个生产者和多个消费者,但本质上,一条消息只能由一个消费者消费。
我应该使用什么方法?我应该为每个服务使用不同的 SQS 队列,还是可以根据消息类型使用单个队列来做到这一点?
【问题讨论】:
标签: publish-subscribe amazon-sqs amazon-sns
我有一个验证服务,它接收验证请求并将它们发布到 SQS 队列。现在根据验证请求的类型,我想将消息转发到该特定服务。
所以基本上,我有一个生产者和多个消费者,但本质上,一条消息只能由一个消费者消费。
我应该使用什么方法?我应该为每个服务使用不同的 SQS 队列,还是可以根据消息类型使用单个队列来做到这一点?
【问题讨论】:
标签: publish-subscribe amazon-sqs amazon-sns
在我看来,你有三个选择;
如您所说,第一个选项是为每种消息类型设置一个唯一的使用者。这是我们使用的方法,我们有数千个队列和许多不同的消息类型。
第二个选项是用一些表明它是期望消费的东西来装饰被推送到 SQS 的消息,然后在您的应用程序中拥有一个通用消费者,可以将消息转发给正确的消费者。虽然这种方法通常被视为一种反模式,但我个人会同意。
第三,您可以利用 SNS filtering,但前提是您现在使用 SNS,否则您必须投入一些时间来设置它并使其正常工作。
李>希望有帮助!
【讨论】: