What is the difference between SQS, SNS, and EventBridge in AWS?
SQS, SNS, and EventBridge are all AWS messaging services but serve different purposes and communication patterns.
Amazon SQS (Simple Queue Service)
SQS is a point-to-point message queue for decoupling distributed systems.
- Pattern: Producer → Queue → Consumer (pull-based)
- Delivery: At-least-once delivery, messages persist until consumed or expired
- Use cases: Task queues, background job processing, load leveling
- Types: Standard (best-effort ordering) and FIFO (exactly-once, ordered)
Example: Order service puts messages in SQS; fulfillment service processes them at its own pace.
Amazon SNS (Simple Notification Service)
SNS is a publish-subscribe (pub/sub) messaging service.
- Pattern: Publisher → Topic → Multiple Subscribers (push-based)
- Delivery: Fan-out to multiple endpoints simultaneously
- Subscribers: SQS queues, Lambda functions, HTTP endpoints, email, SMS
- Use cases: Fan-out notifications, alert broadcasting, mobile push
Example: Payment event publishes to SNS; billing, analytics, and email services all receive it simultaneously.
Amazon EventBridge
EventBridge is a serverless event bus for event-driven architectures.
- Pattern: Event Source → Event Bus → Rules → Targets (content-based routing)
- Delivery: Route events based on content/patterns
- Sources: AWS services, custom apps, SaaS applications (Salesforce, Zendesk, etc.)
- Use cases: Event-driven architectures, microservice decoupling, AWS service integration
Comparison
| Feature | SQS | SNS | EventBridge |
|---|---|---|---|
| Pattern | Queue | Pub/Sub | Event Bus |
| Consumers | Single | Multiple | Multiple |
| Routing | FIFO/Standard | All subscribers | Content-based rules |
| SaaS integration | No | No | Yes |
| Schema registry | No | No | Yes |
When to Use Which
- SQS: Decouple services, handle burst traffic, ensure reliable processing
- SNS: Broadcast to multiple services simultaneously
- EventBridge: Complex routing, AWS service events, third-party SaaS integration
- SNS + SQS: Combined fan-out with reliable processing per subscriber