Need advice about which tool to choose?Ask the StackShare community!
Amazon MQ vs VerneMQ: What are the differences?
Introduction
Amazon MQ and VerneMQ are both messaging brokers that provide message queuing and publish-subscribe functionalities. While they share some similarities, there are key differences that set them apart. In this comparison, we will highlight six major differences between Amazon MQ and VerneMQ.
Managed Service vs. Open Source Solution: Amazon MQ is a fully managed service provided by Amazon Web Services, which means that the infrastructure and maintenance tasks are handled by AWS. On the other hand, VerneMQ is an open source solution that requires manual setup, configuration, and maintenance by the user.
Cloud vs. Self-hosted: Amazon MQ is hosted in the cloud and accessible through the AWS Console or API, providing scalability and high availability out of the box. VerneMQ, however, needs to be self-hosted on a server or cloud instance, requiring user-provided scalability and ensuring high availability through manual setup.
Protocol Support: Amazon MQ supports a wide range of messaging protocols including MQTT, AMQP, OpenWire, and STOMP, making it compatible with various messaging clients and devices. VerneMQ, on the other hand, is focused on providing support mainly for MQTT, with limited or no support for other protocols.
Integration with AWS Services: Amazon MQ seamlessly integrates with other AWS services such as Amazon S3, AWS Lambda, Amazon CloudWatch, and Amazon CloudFormation, allowing for easy event-driven architectures and integration with serverless functions. VerneMQ, being a standalone solution, does not offer built-in integration with these AWS services, requiring additional development effort for integration.
Scalability and Elasticity: Amazon MQ provides automatic scaling and elasticity, allowing the messaging infrastructure to grow or shrink based on demand, ensuring optimal performance and resource utilization. VerneMQ, being self-hosted, requires manual configuration and setup for scaling and elasticity, which may involve additional operational overhead.
Support and Documentation: Amazon MQ is a commercial service with dedicated support from Amazon Web Services, offering technical assistance, troubleshooting, and documentation. VerneMQ, being an open source solution, relies on community support and may not have the same level of dedicated support or comprehensive documentation as a commercially supported service.
In summary, Amazon MQ is a fully managed service provided by Amazon Web Services, offering easy setup, scalability, and integration with other AWS services. VerneMQ, being an open source solution, requires manual configuration and setup, providing greater flexibility and customization but lacking the managed service benefits and extensive integration options of Amazon MQ.
I want to schedule a message. Amazon SQS provides a delay of 15 minutes, but I want it in some hours.
Example: Let's say a Message1 is consumed by a consumer A but somehow it failed inside the consumer. I would want to put it in a queue and retry after 4hrs. Can I do this in Amazon MQ? I have seen in some Amazon MQ videos saying scheduling messages can be done. But, I'm not sure how.
Mithiridi, I believe you are talking about two different things. 1. If you need to process messages with delays of more 15m or at specific times, it's not a good idea to use queues, independently of tool SQM, Rabbit or Amazon MQ. you should considerer another approach using a scheduled job. 2. For dead queues and policy retries RabbitMQ, for example, doesn't support your use case. https://medium.com/@kiennguyen88/rabbitmq-delay-retry-schedule-with-dead-letter-exchange-31fb25a440fc I'm not sure if that is possible SNS/SQS support, they have a maximum delay for delivery (maxDelayTarget) in seconds but it's not clear the number. You can check this out: https://docs.aws.amazon.com/sns/latest/dg/sns-message-delivery-retries.html
Pros of Amazon MQ
- Supports low IQ developers7
- Supports existing protocols (JMS, NMS, AMQP, STOMP, …)3
- Easy to migrate existing messaging service2
Pros of VerneMQ
- Fully open source clustering1
- Proxy Protocol support1
- Open Source Plugin System1
- Open Source Message and Metadata Persistence1
- MQTT v5 implementation1
- Open source shared subscriptions1
Sign up to add or upvote prosMake informed product decisions
Cons of Amazon MQ
- Slow AF4