14 - Decoupling Applications SQS SNS Kinesis MQ

Amazon MQ

awsamazon-mqrabbitmqactivemqsaa-c03

Overview

SQS and SNS are cloud-native services with proprietary protocols and their own APIs. Traditional on-premises applications often use open protocols such as MQTT, AMQP, STOMP, Openwire and WSS. When migrating to the cloud you may not want to re-engineer the application to use the SQS or SNS APIs. Use Amazon MQ instead.

Amazon MQ is a managed message broker service for RabbitMQ and ActiveMQ, so you get managed versions of these on-premises brokers in the cloud.

Exam

Migrating an application that uses MQTT, AMQP, STOMP, Openwire or WSS, without re-engineering it, points to Amazon MQ.

Characteristics

  • Does not scale as much as SQS or SNS, which have effectively infinite scaling.
  • Runs on servers, so you may have server issues. Run a Multi-AZ setup with failover for high availability.
  • Has both queue features (like SQS) and topic features (like SNS) in a single broker.

High Availability

Example: region us-east-1 with us-east-1a and us-east-1b. An Amazon MQ broker runs in both AZs, one active and one standby. For ActiveMQ both mount Amazon EFS as backend storage, a network file system mountable across AZs. On failover the standby already sees the same data, so the data is kept safe for clients talking to the broker.

AWS update (checked 2026-11)

EFS-backed active/standby is ActiveMQ (EBS is an alternative). RabbitMQ uses EBS, and its HA is a 3-node cluster across 3 AZs behind an NLB. The course described EFS for both brokers. The exam may still use the course figure. AWS source


Amazon MQ multi-AZ failover

ApplicationMQTT, AMQP, STOMP Region us-east-1 Broker activeus-east-1a Broker standbyus-east-1b Amazon EFS On failover the standby already sees the same data RabbitMQ or ActiveMQ managed for you. Scales less than SQS or SNS.
ActiveMQ active and standby brokers share Amazon EFS storage. RabbitMQ uses EBS in a 3-node cluster.

Questions & Answers

Q1: When do you choose Amazon MQ over SQS/SNS?

Answer:

When migrating applications that use open protocols (MQTT, AMQP, STOMP, Openwire, WSS) and you do not want to change them.

Q2: Which brokers does Amazon MQ manage?

Answer:

RabbitMQ and ActiveMQ.

Q3: How is Amazon MQ made highly available?

Answer:

Multi-AZ active/standby brokers with Amazon EFS as shared storage (ActiveMQ; RabbitMQ uses EBS in a 3-node cluster).

Q4: Does Amazon MQ scale like SQS/SNS?

Answer:

No. It runs on servers and scales less.

Check yourself

Quiz

Flashcards

Click the card (or focus it), then use ← → to move and Space to flip.