A new backend needs reliable publish/subscribe delivery to several independently scaled worker queues. Each consumer must be able to fall behind without blocking the others. Which design fits?

Published
  1. Call every worker synchronously in one request and fail the whole request on the slowest.
  2. Use DNS weighted routing as message fanout.
  3. Use one SQS queue and expect every competing consumer to receive every message.
  4. Publish to SNS with a separate subscribed SQS queue for each consumer.

Comments — 0