Apache ActiveMQ Artemis 101

Nipuna Dilhara
3 min readFeb 29, 2020

Has ActiveMQ changed its name? Or has it finally decided to go with the family name ‘Artemis’?

The answer is NOPE.

Then what the hell is ActiveMQ Artemis?

The ActiveMQ Artemis is just a mask. The real person hidden underneath it is HornetQ.

FIg1: The man behind the mask. It was Obito Uchiha all the time.

So what happened to HornetQ?

Well, the Apache Foundation received the HornetQ code and they decided to re-title it as ‘Artemis’.

From now on, I will use the term ‘Artemis’ for the Apache ActiveMQ Artemis and call it’s elder brother as ActiveMQ.

At the moment they are two different products. However, according to the ActiveMQ website, the Artemis will eventually become the successor to ActiveMQ as version 6.x [1]. Then what will happen to the old ActiveMQ code? How I’m supposed to know? Let’s see.

Fig2: It’s Uchiha Obito again

Ok. Now let’s see how we are gonna use this new message broker? Or should I say old broker with a new name?

First of all, we have to start the Artemis server. Starting the Artemis server is a little bit trickier than the ActiveMQ.

Step1: Download and unzip the Artemis.

Here is the link for the Artemis download page [2]. The latest release is version 2.11.0.

Step2: Create a broker instance

In order to run the Artemis server, we have to create a broker instance of the server. So navigate to the <Artemis_Home>/bin folder and run the following command.

$ ./artemis create MyBroker

Then it will ask for username/password and permission for anonymous access.

--user: is a mandatory property!
Please provide the default username:
admin
--password: is mandatory with this configuration:
Please provide the default password:
--allow-anonymous | --require-login: is a mandatory property!
Allow anonymous access?, valid values are Y,N,True,False
Y
Auto tuning journal ...
done! Your system can make 50 writes per millisecond, your journal-buffer-timeout will be 20000

Step3: Start the Artemis server

Navigate to the MyBroker/bin folder and start the broker by executing:

$ ./artemis run

Or you can run the broker as a background service by using:

$ ./artemis-service start
Fig3: Artemis server startup

In order to stop the server, you can use the following commands:

$ ./artemis stopOr$ ./artemis-service start

Step 4: Log in to the Artemis console

Why not end the article with login after explaining all the stuff hut?

You can log in to the Artemis server console at:

http://localhost:8161/console/login

This is what you will see.

Fig4: Artemis login page
Fig5: Artemis console page

That’s it for this post.

I have planned to discuss a lot about connecting Artemis with WSO2 Enterprise Integrator (EI) in the future. I hope this post will set a nice foundation for the upcoming articles.

Good Bye till we meet again.

References:

[1] https://activemq.apache.org/how-does-activemq-compare-to-artemis

[2] https://activemq.apache.org/components/artemis/download/

[3] https://docs.wso2.com/display/EI650/Configure+with+Apache+Artemis

--

--