SNS - SQS
Feature | SNS | SQS | SNS + SQS |
---|---|---|---|
Durable delivery | ❌ No storage | ✅ Yes — persisted until consumed | ✅ Yes — SQS provides durability |
Retry on failure | ⚠️ Limited retries | ✅ Yes — visibility + DLQ support | ✅ Yes — full retry logic via SQS |
Consumer down? Buffer anyway? | ❌ No — message may be lost | ✅ Yes — stays in queue | ✅ Yes — buffered in SQS |
Multiple consumers w/ isolation | ⚠️ Tricky to isolate | ⚠️ Competing consumers only | ✅ Each queue is isolated |
Replayable delivery | ❌ Not supported | ❌ Not after consumption | ✅ Can reprocess within retention |
At-least-once delivery | ❗ Best effort only | ✅ Guaranteed | ✅ Guaranteed via SQS |
Bonus
Tie SNS -> SQS to have more Kafka like delivery pipeline.