What is the difference between Amazon MQ and SQS?

mishav picture mishav · Feb 21, 2020 · Viewed 11.6k times · Source

I am a newbie to AWS. As I understand, both AWS MQ and AWS SQS are Message Queue tools. The only noted difference is that SQS is fully managed.

When should we use SQS or MQ?

Answer

mcfinnigan picture mcfinnigan · Feb 21, 2020

SQS is a simple queueing service. It doesn't support many higher level abstractions like message routing, fanouts, distribution lists etc. It is a queue - a message is produced, and a message is delivered. It is useful when you need a Queue with limited backing logic.

AWS MQ is a managed Apache ActiveMQ(or RabbitMQ) broker service.

This provides you a fully managed Apache ActiveMQ system in the cloud, with support for a variety of industry-standard queue and broadcast protocols like AMQP, JMS etc. It is useful when you have complicated delivery rules - or when you're migrating an existing system from outside AWS into AWS, and your systems happen to talk to one another with a standard queueing protocol.