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

ActiveMQ

608
1.3K
+ 1
77
Amazon MQ

54
324
+ 1
12
Add tool

ActiveMQ vs Amazon MQ: What are the differences?

Introduction

ActiveMQ and Amazon MQ are both messaging services that provide reliable and scalable messaging solutions to businesses. However, there are several key differences between the two that make them suitable for different use cases. In this article, we will explore six key differences between ActiveMQ and Amazon MQ.

  1. Managed Service vs. Self-Managed: One of the main differences between ActiveMQ and Amazon MQ is that Amazon MQ is a managed service provided by Amazon Web Services (AWS), while ActiveMQ requires self-management. With Amazon MQ, AWS takes care of the underlying infrastructure and maintains the service, allowing users to focus on their messaging applications. ActiveMQ, on the other hand, requires users to set up and manage their own instances and infrastructure.

  2. Integration with AWS ecosystem: Being an AWS service, Amazon MQ seamlessly integrates with other AWS services such as AWS Lambda, AWS CloudFormation, and Amazon CloudWatch. This allows users to easily incorporate messaging capabilities into their existing AWS infrastructure. ActiveMQ does not have this level of integration with AWS services, requiring users to set up custom integration solutions if needed.

  3. Protocol Support: ActiveMQ supports a wide range of protocols, including Stomp, MQTT, AMQP, OpenWire, and more. This makes it highly versatile and suitable for different messaging scenarios. Amazon MQ primarily supports the industry-standard messaging protocols of MQTT and AMQP, which may be sufficient for most use cases but may not offer the same level of flexibility as ActiveMQ.

  4. Scalability and Performance: Both ActiveMQ and Amazon MQ offer horizontal scalability, allowing users to add more instances to handle increasing message traffic. However, Amazon MQ, being a managed service in the AWS ecosystem, benefits from the scalability and performance optimizations provided by AWS. These optimizations can result in better overall scalability and performance compared to self-managed ActiveMQ instances.

  5. Pricing Model: ActiveMQ follows an open-source model and is free to use. However, users are responsible for the costs associated with infrastructure and instance management. Amazon MQ, being an AWS managed service, follows a pay-as-you-go pricing model. Users are billed for the number of broker instances they use and the amount of data transferred. While this may result in additional costs compared to self-managed ActiveMQ instances, it also provides the convenience of not having to worry about infrastructure management.

  6. Support and Documentation: With Amazon MQ being an AWS service, users have access to AWS support and extensive documentation. This can be valuable in troubleshooting issues and getting assistance when needed. ActiveMQ, being an open-source project, relies more on community support and documentation, which may not be as comprehensive or accessible as that of a managed service like Amazon MQ.

In summary, the key differences between ActiveMQ and Amazon MQ lie in the level of management and integration with AWS services, protocol support, scalability and performance, pricing model, and support/documentation. While ActiveMQ offers more flexibility and is free to use, Amazon MQ provides the convenience of a managed service within the AWS ecosystem, which may be more suitable for businesses relying heavily on AWS services.

Advice on ActiveMQ and Amazon MQ
MITHIRIDI PRASANTH
Software Engineer at LightMetrics · | 4 upvotes · 275.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 · 210.5K 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 ActiveMQ
Pros of Amazon MQ
  • 18
    Easy to use
  • 14
    Open source
  • 13
    Efficient
  • 10
    JMS compliant
  • 6
    High Availability
  • 5
    Scalable
  • 3
    Distributed Network of brokers
  • 3
    Persistence
  • 3
    Support XA (distributed transactions)
  • 1
    Docker delievery
  • 1
    Highly configurable
  • 0
    RabbitMQ
  • 7
    Supports low IQ developers
  • 3
    Supports existing protocols (JMS, NMS, AMQP, STOMP, …)
  • 2
    Easy to migrate existing messaging service

Sign up to add or upvote prosMake informed product decisions

Cons of ActiveMQ
Cons of Amazon MQ
  • 1
    ONLY Vertically Scalable
  • 1
    Support
  • 1
    Low resilience to exceptions and interruptions
  • 1
    Difficult to scale
  • 4
    Slow AF

Sign up to add or upvote consMake informed product decisions

- No public GitHub repository available -

What is 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.

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.

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

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

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

What tools integrate with ActiveMQ?
What tools integrate with Amazon MQ?

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

Blog Posts

What are some alternatives to ActiveMQ and Amazon MQ?
RabbitMQ
RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
Kafka
Kafka is a distributed, partitioned, replicated commit log service. It provides the functionality of a messaging system, but with a unique design.
Apollo
Build a universal GraphQL API on top of your existing REST APIs, so you can ship new application features fast without waiting on backend changes.
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.
ZeroMQ
The 0MQ lightweight messaging kernel is a library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products. 0MQ sockets provide an abstraction of asynchronous message queues, multiple messaging patterns, message filtering (subscriptions), seamless access to multiple transport protocols and more.
See all alternatives