‫So now let's talk about Amazon MQ.
‫So we know about SQS and SNS
‫and they're cloud-native services
‫because they are proprietary protocols from AWS.
‫They use their own sets of APIs.
‫But if you are running traditional application on-premises,
‫you may use open protocols
‫such as MQTT, AMQP, STOMP, Openwire, WSS.
‫And when you're migrating your application to the cloud,
‫you may not want to re-engineer your application
‫to use the SQS and the SNS protocols or APIs.
‫So instead, you wanna use the traditional protocols
‫you used to, such as MQTT, AMQP, and so on.
‫So for this, we can use Amazon MQ.
‫So Amazon MQ is very simple.
‫It's a managed message broker service for two technologies,
‫for RabbitMQ and for ActiveMQ.
‫So RabbitMQ and ActiveMQ are, for example,
‫on-premises technologies that provide you access
‫to the open protocols I just mentioned.
‫So then we can get a managed version of these brokers
‫onto the cloud thanks to Amazon MQ.
‫So as such, you can understand the implications.
‫First of all, Amazon MQ doesn't scale as much as SQS or SNS,
‫which have sort of like infinite scaling.
‫And because Amazon MQ runs on servers,
‫you may have server issues.
‫And so you can run multi-AZ setup
‫with a failover if you want to be highly available.
‫Also, Amazon MQ comes with both a queue feature,
‫so it looks like SQS,
‫and topic features, it looks like SNS
‫as part of a single broker.
‫So Amazon MQ is going to be used only and only if
‫a company is migrating to the cloud
‫and needs to use one of these open protocols,
‫such as MQTT, AMQP, STOMP, et cetera, et cetera.
‫Otherwise, it should be using SQS and SNS
‫because they scale a lot better
‫and they're way more integrated
‫with Amazon Web Services than Amazon MQ.
‫So I hope that helps and I will see you in the next lecture.