Confusion between ActiveMQ and ActiveMQ-Artemis

activemq

Can someone clarify the difference between ActiveMQ and ActiveMQ-Artemis? From what I understood on Wikipedia, ActiveMQ-Artemis is essentially the successor to ActiveMQ, but if that is the case, I do not understand why Artemis is listed as a subproject of ActiveMQ.

Moreover, if I look at the versioning for ActiveMQ and ActiveMQ-Artemis, I see that the versions are completely different. ActiveMQ being at 5.15 and Artemis being at 2.2.

From what I understand, Artemis is a faster, more recent implementation, including support for JMS 2.0. Given a new installation & deployment of an MQ platform, is should ActiveMQ 5.15 be considered as deprecated in lieu of Artemis?

Best Answer

Apache received the code of HornetQ and they decided to change the name to Artemis and then the potential future ActiveMQ.

But by looking to the latest news on their board, it seems the two projects are still distinct and ActiveMQ 5.15.x is still using the old ActiveMQ core source code.

Apparently they need to add some ActiveMQ features that were not in the initial HornetQ code, like a full AMQP support.

In this older post you can see some Questions/Answers that can address one of your question:

Q. The ActiveMQ PMC needs to deliver a plan for:

A. Apache ActiveMQ has multiple products with multiple versions:

a.  ActiveMQ - (version 5.x.x)
b.  ActiveMQ Artemis - (version 1.x.x)

This means that we are not yet ready to declare that ActiveMQ Artemis is the successor to ActiveMQ 5.x. We will wait until the product matures to make that decision.

And this original post right after the donation.

From what I understand, Artemis is a faster, more recent implementation, including support for JMS 2.0. Given a new installation & deployment of an MQ platform, is should ActiveMQ 5.15 be considered as deprecated in lieu of Artemis?

The implementation is not more recent (or a bit) but coming from a different open source project (HornetQ) which was already implementing JMS 2.0.

In my case if I have to choose a MOM for a brand new project I would try Artemis for sure, especially testing the multi-instance (master-master) and the new feature that replaces the old Network-Of-Brokers in AMQ world. I have to admit; I did not try it and then if you know how to properly configure a stable ActiveMQ, I think you have to take this in account as well. On the other side, I would say HornetQ was really stable and easy to embed in any Java application (we embedded it in a war deployed on a Tomcat quite easily).

Personally, if I have to upgrade my current ActiveMQ implementation, the fastest way would be to stick on the latest ActiveMQ 5.15.x release because switching to Artemis would probably raise more issues.

References:

Related Topic