AWS SQS:如何使用 1 个发布者->N 个接收者?

AWS SQS: how to use 1 publisher->N receivers?

如何在 AWS SQS 中创建类似于 'direct' 在 RabbitMQ 中交换的东西: 1 条消息 -> N 个接收者队列。

每个客户端应用程序连接到服务器并创建自己的队列,发布者发送一条消息到交换器(直接+路由键)并将其发送到所有 N 个队列,然后每个用户读取自己的队列并清空队列.

这可以通过结合 Amazon SNS 和 Amazon SQS 的 'fan-out' 模式来完成:

  • 创建所有需要的 Amazon SQS 队列
  • 创建 Amazon SNS 主题
  • 将所有 Amazon SQS 队列订阅到 Amazon SNS 主题
  • 向 Amazon SNS 主题发送消息 -- 这将被发送到所有订阅队列。每个队列都有自己的消息副本。

确保使用 Amazon SNS raw message delivery 保留初始消息从 Amazon SNS 到 SQS 队列时的格式。

另请参阅:How to Fan-Out to Different SQS Queues Using SNS Message Filtering | by Lorenz Vanthillo | Better Programming