CodePark/ questions / SQS, SNS & EventBridge
START PRACTICINGPRACTICE
Backend question · Cloud & AWS › SQS, SNS & EventBridge

What is Amazon EventBridge, and when would you choose it over SNS?

EventBridge is a serverless event bus. An event bus is a central place where services send events and other services receive them. Producers put JSON events on a bus. Rules then match events by their content, using event patterns, and send them to targets such as:

  • Lambda
  • SQS
  • Step Functions
  • API destinations
  • another bus

Choose EventBridge when you want:

  • content-based routing on any field of the event
  • many loosely coupled producers and consumers in an event-driven architecture
  • to react to AWS service events, like an ECS task stopping or an S3 object being created

EventBridge has more features:

  • It receives events from supported SaaS partners.
  • It can archive events and replay them later.
  • It has a schema registry.
  • EventBridge Scheduler runs cron schedules or one-time schedules.

SNS fits simpler cases. Use it for high-throughput pub/sub fan-out, where one message goes to many subscribers. Also use it for direct delivery to SMS, email or mobile push. SNS usually has lower latency, while EventBridge offers richer routing.

  • EventBridge is an event bus with rules that match on event content.
  • It has many targets: Lambda, SQS, Step Functions and API destinations.
  • It receives native AWS service events and SaaS partner events.
  • It can archive and replay events, and Scheduler runs cron and one-off schedules.
  • Choose SNS for simple high-throughput fan-out and for SMS, email or push.