Need advice about which tool to choose?Ask the StackShare community!

Amazon MQ

54
324
+ 1
12
VerneMQ

31
136
+ 1
6
Add tool

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.

  1. 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.

  2. 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.

  3. 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.

  4. 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.

  5. 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.

  6. 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.

Advice on Amazon MQ and VerneMQ
MITHIRIDI PRASANTH
Software Engineer at LightMetrics · | 4 upvotes · 273.3K views
Needs advice
on
Amazon MQAmazon MQ
and
Amazon SQSAmazon SQS
in

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.

See more
Replies (1)
Andres Paredes
Lead Senior Software Engineer at InTouch Technology · | 1 upvotes · 208.9K views
Recommends
on
Amazon SQSAmazon SQS

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

See more
Get Advice from developers at your company using StackShare Enterprise. Sign up for StackShare Enterprise.
Learn More
Pros of Amazon MQ
Pros of VerneMQ
  • 7
    Supports low IQ developers
  • 3
    Supports existing protocols (JMS, NMS, AMQP, STOMP, …)
  • 2
    Easy to migrate existing messaging service
  • 1
    Fully open source clustering
  • 1
    Proxy Protocol support
  • 1
    Open Source Plugin System
  • 1
    Open Source Message and Metadata Persistence
  • 1
    MQTT v5 implementation
  • 1
    Open source shared subscriptions

Sign up to add or upvote prosMake informed product decisions

Cons of Amazon MQ
Cons of VerneMQ
  • 4
    Slow AF
    Be the first to leave a con

    Sign up to add or upvote consMake informed product decisions

    What is Amazon MQ?

    Amazon MQ is a managed message broker service for Apache ActiveMQ that makes it easy to set up and operate message brokers in the cloud.

    What is VerneMQ?

    VerneMQ is a distributed MQTT message broker, implemented in Erlang/OTP. It's open source, and Apache 2 licensed. VerneMQ implements the MQTT 3.1, 3.1.1 and 5.0 specifications.

    Need advice about which tool to choose?Ask the StackShare community!

    What companies use Amazon MQ?
    What companies use VerneMQ?
    See which teams inside your own company are using Amazon MQ or VerneMQ.
    Sign up for StackShare EnterpriseLearn More

    Sign up to get full access to all the companiesMake informed product decisions

    What tools integrate with Amazon MQ?
    What tools integrate with VerneMQ?

    Sign up to get full access to all the tool integrationsMake informed product decisions

    What are some alternatives to Amazon MQ and VerneMQ?
    Amazon SQS
    Transmit any volume of data, at any level of throughput, without losing messages or requiring other services to be always available. With SQS, you can offload the administrative burden of operating and scaling a highly available messaging cluster, while paying a low price for only what you use.
    RabbitMQ
    RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
    IBM MQ
    It is a messaging middleware that simplifies and accelerates the integration of diverse applications and business data across multiple platforms. It offers proven, enterprise-grade messaging capabilities that skillfully and safely move information.
    ActiveMQ
    Apache ActiveMQ is fast, supports many Cross Language Clients and Protocols, comes with easy to use Enterprise Integration Patterns and many advanced features while fully supporting JMS 1.1 and J2EE 1.4. Apache ActiveMQ is released under the Apache 2.0 License.
    Kafka
    Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.
    See all alternatives