๐Ÿฆ
๐Ÿ“ข
๐ŸŽซ
๐Ÿ“‹
An AWS Messaging Story

The Banking Hall
at GCB Plaza

You walk into a busy Ghana bank. There's a queue. There's an announcer calling numbers. There's a receptionist who decides where each customer goes. Three completely different ways of moving people around โ€” and each is exactly how AWS moves messages between your services.

Take a number
SCROLL TO QUEUE
Chapter 1 ยท The Banking Hall

One bank. Three ways to move customers.

Imagine the inside of GCB's main branch in Accra. Customers come in needing different things โ€” deposits, withdrawals, statements, account opening, loan inquiries. The bank can't just let everyone rush the tellers at once.

So the bank uses three different systems to handle the flow:

1. A numbered queue โ€” pull a ticket, wait your turn, one teller serves you.

2. A public announcer โ€” "All loan officers, please come to the front desk!" โ€” broadcasts to many people at once.

3. A smart receptionist โ€” asks what you need, then sends you to the RIGHT department based on the answer.

In AWS, you have all three. They look intimidating with names like SQS, SNS, and EventBridge โ€” but they're just digital versions of what GCB already does every day.

SQS ยท SNS ยท EventBridge โ€” Three Messaging Systems
GCB PLAZA ยท ACCRA QUEUE 42 โ†’ SQS ANNOUNCER โ†’ SNS RECEPTIONIST โ†’ EventBridge โ†“ ENTER โ†“
Chapter 2 ยท The Queue

SQS โ€” the numbered queue

You walk in, pull a numbered ticket โ€” say, #42. The screen says "now serving #38." So you sit down. You wait. Eventually the screen shows #42, and a teller calls you to window 3.

Notice three important things:

โ€ข You don't pick a teller. Whoever's free serves you.
โ€ข Only ONE teller serves you. Not three. Not all of them. Just one.
โ€ข If all tellers are busy, you wait. The line just gets longer. Nobody panics. Nobody loses their place.

This is the entire idea of SQSSQS = Simple Queue Service. Messages sit in a queue and are pulled by ONE consumer. If consumers are slow or down, messages just wait. Perfect for processing tasks one at a time. โ€” Simple Queue Service. One sender drops a message in the queue, one worker picks it up, processes it, deletes it. If the worker crashes? The message goes back to the queue and another worker picks it up. Nothing gets lost.

Use SQS when: you have tasks that need to be done one at a time, in order or otherwise โ€” like processing orders, sending emails, generating PDFs, running batch jobs.

Amazon SQS โ€” One-to-One Queue
The Queue at GCB NOW SERVING #38 #42 #43 #44 #45 TELLER Window 3 SQS QUEUE (FIFO) 4 customers waiting ยท 1 teller serving ยท order preserved
Watching the line
Chapter 3 ยท The Announcer

SNS โ€” the public announcer

Now the bank manager grabs a megaphone and shouts: "ATTENTION! All loan officers, all account managers, all customer service reps โ€” please report to the main floor immediately!"

One announcement. Many people hear it. EVERYONE who's listening responds. The loan officers come. The account managers come. The CS reps come. They all act on the same single announcement, in parallel, at the same time.

Notice the difference from the queue:

โ€ข Many recipients hear the same message at once
โ€ข Nobody waits in line โ€” it's broadcast
โ€ข The announcer doesn't care who responds or how long they take

This is SNSSNS = Simple Notification Service. A pub/sub system. ONE message gets fanned out to MANY subscribers โ€” could be email, SMS, Lambda functions, SQS queues, all at once. โ€” Simple Notification Service. One publisher sends a message to a "topic." Anyone subscribed to that topic gets a copy. Could be 1 subscriber. Could be 1,000.

Real example: an order is placed. SNS broadcasts that fact. The shipping system gets notified. The email system gets notified. The fraud detector gets notified. Everyone reacts simultaneously.

Use SNS when: something happens and multiple systems need to know about it โ€” order placed, file uploaded, alarm triggered, payment received.

Amazon SNS โ€” One-to-Many Broadcast
The Bank Manager's Announcement MANAGER SNS Topic staff-call Loan Officers 5 people listening โœ“ Account Mgrs 3 people listening โœ“ CS Reps 8 people listening โœ“ 1 message ยท 3 subscribers ยท everyone responds
Listening for broadcast
Chapter 4 ยท The Receptionist

EventBridge โ€” the smart receptionist

Now meet the bank's receptionist. She sits at a desk near the entrance with a clipboard. Every customer that walks in goes to her FIRST. She asks: "Good morning, how can I help you today?"

The customer says "I want to open a savings account" โ€” she sends them to account opening.

Another says "I lost my ATM card" โ€” she sends them to card services.

A third says "I want a loan over 100,000 cedis" โ€” she sends them to the senior loan manager, NOT the regular loan desk.

She doesn't broadcast. She doesn't queue. She reads the request and routes it intelligently based on rules.

This is EventBridgeEventBridge is an event bus that lets you route events to different targets based on rules. You can filter by content, transform data, and even integrate with SaaS apps like Stripe, Datadog, Zendesk.. It's the most flexible of the three. Events come in. Rules look at the content. Each rule sends matching events to specific targets โ€” Lambda, SQS, SNS, even external SaaS apps.

It's like SNS with a brain. Or SQS with rules.

Use EventBridge when: different events need different reactions โ€” "if order > $1000 alert finance, if order < $50 just send confirmation, if from VIP customer notify account manager."

Amazon EventBridge โ€” Event-Driven Routing
The Receptionist's Desk RECEPTIONIST "I want to open an account" Account Opening โ†’ Lambda Card Services โ†’ SQS Queue Senior Loan Mgr โ†’ SNS Alert RULES if "open" โ†’ Lambda if "card" โ†’ SQS if "loan" โ†’ SNS EventBridge: read content ยท match rule ยท route to right target
Watching the routing
Chapter 5 ยท Choosing Wisely

So which one do you actually pick?

Newbies always get this question wrong on the cert. The trick is asking ONE question:

"How many things should react to this message?"

โ€ข One thing reacts โ†’ SQS (queue, one worker)
โ€ข Many things react, all the same way โ†’ SNS (broadcast)
โ€ข Different things react based on content โ†’ EventBridge (smart routing)

A few real-world examples:

Order placed โ†’ many systems care (shipping, billing, email, fraud) โ†’ SNS

Image upload to be resized โ†’ one Lambda needs to pick it up and process it โ†’ SQS

Customer activity stream โ†’ if VIP, alert manager; if international, run compliance check; otherwise just log โ†’ EventBridge

A pro tip: SNS + SQS together is one of the most common AWS patterns. SNS broadcasts, and each subscriber is its own SQS queue, so each system processes at its own pace.

SNS โ†’ SQS Fanout โ€” A Classic Pattern
SNS + SQS Fanout Pattern ORDER PLACED (event) SNS Topic order-events SQS Queue SHIPPING โ†’ Lambda SQS Queue EMAIL โ†’ Lambda SQS Queue FRAUD CHECK โ†’ Lambda publish fanout fanout fanout Why both SNS + SQS? โ€ข If shipping is down, its queue holds the message ยท email still goes โ€ข Each system processes at its own pace ยท no blocking
The Map

The whole banking hall, in AWS terms

When you see a question about queues, topics, or event buses on the cert โ€” picture GCB. The numbered line. The megaphone. The receptionist with the clipboard. The right answer becomes obvious.

๐ŸŽซ
The Numbered Queue
โ†“
Amazon SQS

One sender, one worker. Tasks line up. If the worker fails, the message comes back.

๐Ÿ“ข
The Public Announcer
โ†“
Amazon SNS

One message broadcasts to many subscribers. Everyone reacts in parallel.

๐Ÿ“‹
The Smart Receptionist
โ†“
Amazon EventBridge

Reads the request. Applies rules. Routes to the right target based on content.

"AWS messaging isn't magic. It's just a well-organized banking hall."

Read the story again