Pivotal logo

RabbitMQ Review
SSL, clustering, and integrates with LDAP.

Valuable Features

  • Does SSL (security)
  • Does clustering (stability)
  • Integrates with LDAP (management)
  • Automatically resends data when a consumer fails
  • Automatically routes data
  • Excellent spring boot integration
  • Multiple programming languages provide excellent integration

Improvements to My Organization

With RabbitMQ cluster servicing micro-services, we don't have any downtime and we don't lose any data. We can update and/or upgrade the micro-services without downtime.

Room for Improvement

  • You cannot edit shovels other than by recreating them.
  • Routing of data could be more enhanced with a nice GUI. ("IF header.contains(this.thing) THEN data.goesTo(cluster_02)").
  • In its current form, you have to recreate a shovel with the same parameters except for the one you want to change. You end up doing more or less a delete/create.
  • There is no HTML form where you can click on a shovel and adjust the wrong parameter.
  • If I click on a shovel, I get on a page that lists the shovel, but it is not editable. You have to create a shovel and then delete the old one with all the same parameters, except for the one you want to change.
  • Temporarily stopping shovels is also not possible in the web interface. I do not know if the CLI version can do it, but if somebody wants to temporarily stop the incoming flow, he or she has to delete the shovel and then recreate it afterwards. This is annoying, to say the least.
  • RabbitMQ has to be started before one can define exchanges, queues, and even users with rabbitmqctl. See https://www.rabbitmq.com/man/r...
  • This is no problem if one lives in the monolithic server environment. However, if one wanted to make a RabbitMQ Docker-container with a pre-defined set of exchanges, queues, users, and shovels, you have to literally jump start the server. You would have to configure it in the Docker build phase. You would do it like this in the Dockerfile: RUN service start rabbitmq-server && wait 30 && rabbitmqctl add_user mike mikespassword.

Use of Solution

I have used RabbitMQ for four years.

Stability Issues

We did have stability issues in the past. After shutting it down, the cluster did not start until we deleted some corrupted file. This occurred more than a year ago.

Scalability Issues

It works as expected, i.e., flawless.

Customer Service and Technical Support

We have not needed any technical support as of yet.

Previous Solutions

We did not evaluate any previous solutions.

Initial Setup

Just enter this command: $ apt-get install rabbitmq-server

Pricing, Setup Cost and Licensing

It’s open source with paid support.

Other Solutions Considered

We looked at Kafka, but we needed the routing as well.

Other Advice

Start it in Docker and use Java Spring Boot or Node.JS with amqplib to connect to it. It has transformed how I think data should flow in an organization.

Disclosure: I am a real user, and this review is based on my own experience and opinions.

Add a Comment

Anonymous avatar x30
Why do you like it?

Sign Up with Email