RabbitMQ Free Message Queue Software
Erlang Based Most Widely Deployed Open Source Message Broker
RabbitMQ is open source message queueing software. It provides asynchronous messaging, application decoupling and a safe platform to send and receive messages.
Overview
RabbitMQ is the most widely deployed and popular open source best message broker software — an intermediary for messaging. It’s written in Erlang programming language and is backed by the Pivotal Software Foundation. It gives your applications a common platform and a safe place to send and receive messages. It’s features include performance, reliability, high availability, clustering and federation etc. RabbitMQ ships with an easy to use management UI that allows you to monitor and control your message broker.
RabbitMQ message broker or queue manager can be downloaded from the official website for all of the major operating systems i.e Linux, Windows, and macOS. It is recommended to use RabbitMQ plugins to ease the workload of message brokers and to expand it’s functions. The most important RabbitMQ plugin is the management plugin and you have to activate it manually. RabbitMQ management plugin helps users to operate RabbitMQ using it through a Graphical User Interface.
Features
Some of the key features of RabbitMQ are listed below:
- Asynchronous Messaging
- High Availability and Reliability
- Flexible Routing Logic
- Network Clustering
- Federation model
- Highly Available Queues
- Multi Protocol Messaging
- Many language Clients
- Easy to Use Management UI
- Management and Monitoring
- Tracing Support
- Tools and Plugin System
- Open Source
Installation Instructions
Install RabbitMQ on Ubuntu
RabbitMQ is simple and easy to get started software. First, ensure that all the depency packages of RabbitMQ are installed and up to date. Below guide covers RabbitMQ installation on Debian and Ubuntu including distributions based on them. Please follow the instructions below to setup RabbitMQ. Install Erlang with:
wget https://packages.erlang-solutions.com/erlang-solutions_1.0_all.deb
sudo dpkg -i erlang-solutions_1.0_all.deb
sudo apt-get update -y
sudo apt-get install -y erlang erlang-nox
Next, add RabbitMQ apt repository:
echo 'deb http://www.rabbitmq.com/debian/ testing main' | sudo tee /etc/apt/sources.list.d/rabbitmq.list
wget -O- https://www.rabbitmq.com/rabbitmq-release-signing-key.asc | sudo apt-key add -
update the packages list with command:
sudo apt-get update -y
Next, install RabbitMQ server:
sudo apt-get install -y rabbitmq-server
You can start RabbitMQ server using command:
sudo systemctl start rabbitmq-server
Check RabbitMQ status with:
sudo systemctl status rabbitmq-server
Enable RabbitMQ service so it starts on system boot:
sudo systemctl enable rabbitmq-server
Next, setup RabbitMQ web management console:
sudo rabbitmq-plugins enable rabbitmq_management
Create administrator account in RabbitMQ single instance:
sudo rabbitmqctl add_user admin password
sudo rabbitmqctl set_user_tags admin administrator
sudo rabbitmqctl set_permissions -p / admin ".*" ".*" ".*"
You can setup RabbitMQ instance cluster on the master node with:
wget https://gist.githubusercontent.com/fernandoaleman/05cbf15e0e58f8de7a29a21b24f9debb/raw/55efa7b36c245a9f6ffa3bcd2382c078cce0e9a2/rabbitmq-cluster.sh
chmod +x rabbitmq-cluster.sh
./rabbitmq-cluster.sh
Open your favourite browser and browse http://localhost:15672/ for opening the rabbitmq management.
Congratulations! You have successfully installed RabbitMQ software on ubuntu 20.04. Enjoy!
FAQs
What is rabbitmq used for?
RabbitMQ is a messaging broker also known as a message queueing software or queue manager. It gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
How do I install RabbitMQ?
Once a supported version of Erlang is installed, download the RabbitMQ installer, rabbitmq-server and run it. It installs RabbitMQ and starts it using the default configuration.
Where is RabbitMQ installed on Linux?
By default this is /usr/local. Debian and RPM package installations use an empty ${install_prefix}. Note that /usr/lib/rabbitmq/plugins is used only when RabbitMQ is installed into the standard (default) location.
How do I start RabbitMQ locally?
The RabbitMQ service starts automatically. You can stop/reinstall/start the RabbitMQ service from the Start Menu. Once all done open : http://localhost:15672/ for opening the rabbitmq management.
What is the difference between RabbitMQ and ActiveMQ?
The main difference between ActiveMQ and RabbitMQ is that ActiveMQ is an open-source multi-protocol supported message broker written in Java language while RabbitMQ is an open-source multi-protocol supported messaged broker written in Erlang language.