RabbitMQ Series Part 4: Overview of the Management Portal

In the previous article we looked at the installation and basic configuration of RabbitMQ. In this article we will look in more detail at the Management Portal.

The RabbitMQ management plugin provides a browser based user interface to administer the message broker as-well as a HTTP-based API for management and monitoring of your RabbitMQ server.

The management plug-in features include:

  • Declare, list and delete exchanges, queues, bindings, users, virtual hosts and permissions.
  • Monitor queue length, message rates globally and per channel, data rates per connection, etc.
  • Send and receive messages.
  • Monitor Erlang processes, file descriptors, memory use.
  • Export / import object definitions to JSON.
  • Force close connections, purge queues.

The management portal is split into different screens that are selectable with the menu bar at the top of the screen. The first screen you will see is the overview page. This acts as a dashboard view showing you how many messages are in the broker, and the message throughput rate.

RabbitMQ Management Portal Overview Screen
RabbitMQ Management Portal Overview Screen

This screen is useful to have up on a large display so you can see at a glance how RabbitMQ is performing. If, for example, any of your message consumer applications go down, you will start to see a large buildup of undelivered messages which is a good indication that something has gone wrong.

In the image above, you can see on the overview screen that 1 messages was placed onto the queue at 10:49.00. In the chart below this you can see the message rates which is split into Published messages, Delivered messages, Redelivered messages, Acknowledged messages and Delivered messages where no acknowledgement was required.

RabbitMQ Series Part 3: Installing and Configuring RabbitMQ

In the previous article we look at the AMQP messaging standard that sits behind RabbitMQ. In this article we will look at installing and configuring RabbitMQ.

Basic Installation

Now that we have covered the basics of message queuing, RabbitMQ, and the AMQP model, let’s get RabbitMQ installed and configured. When you set up RabbitMQ on a server, you need to install two components. First, you need the Erlang run time and then RabbitMQ itself. First, go to the RabbitMQ website to download it.

Once you are on this page, select “Install: Windows” from the grey panel to the right of the screen:

Download RabbitMQ
Download RabbitMQ

From this page, click the link to the “Erlang Windows Binary File” as shown in the following screen shot. This will take you to the Erlang website downloads page.

Download the Erlang Runtime
Download the Erlang Runtime

When you are on the Erlang site, pick the latest version of the runtime that matches your operating system. If you are running a 64bit operating system, then pick the 64bit version and visa versa with the 32bit version.

Developing Windows 10 Universal Apps in Microsoft Visual Studio 2015

Now that I have upgraded my main work laptop to Windows 10, I want to learn all about the Windows 10 Universal Apps platform. I am at the beginning of this journey, so I am a beginner here. I have been looking for lots of resources to help me out and I found this TechEd training session on youtube. I have found it useful, so I thought I would share it.

I have also found the Microsoft Virtual Academy video for Windows 10 Development on Youtube. This is a longer tutorial, but covers much more detail.

RabbitMQ Series Part 2: The AMQP Messaging Standard

In the first article in this RabbitMQ series we looked at what message queueing is and a brief look at RabbitMQ. In this article we will look in more detail at the AMQP messaging standard that underpins RabbitMQ.

RabbitMQ is built on top of the AMQP. This is a network protocol that enables client applications to communicate with a compatible messaging system.

A message broker works by receiving messages from a client (publisher) and that broker routes the message to a receiving application (consumer).

RabbitMQ Message Broker
RabbitMQ Message Broker

RabbitMQ currently supports version 0-9-1 of the AMQP protocol. With the AMQP protocol, a message is published by an application to an exchange. You can think of the exchange as a mailbox. The exchange then sends the message to a queue by using different rules called bindings. This is all within the message broker.

The message broker will then deliver the message from the queue to a consumer (the consumer pulls the message) that is subscribed to the queue. When a message is published to a queue, a publisher can specify various different message attributes. Some of these attributes will be used by the message broker but the rest is completely opaque to the broker and is only used by any applications that receive the message.

New Pluralsight Course Coming Soon

I have recently completed work on my 4th course for Pluralsight. This time I am doing a soft-skills and careers course for the library. The course is called, Conflict Resolution in the Workplace.

Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight
Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight

The course tackles how to spot the early stages of conflict and then drive to a suitable resolution.

The course aim is:

The aim is for you to be able to identify and deal with conflict before a crisis occurs.

And the course objectives are :

  • Identify the different stages of conflict and describe what happens at each stage.
  • Explore your own relationship with conflict and how it can affect performance.
  • Demonstrate how to stop conflict from escalating and move both parties to agreement.
  • Describe what your natural style is for dealing with conflict.
  • Explain the process for the use of negotiation and/or mediation for conflict.
Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight
Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight

The course is useful to anyone that works in a professional team work environment and is suitable to all levels from junior team members through to managers and leaders.

Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight
Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight

The course tackles some of the following subjects.

  • Detecting the warning signs of conflict.
  • The stages to resolution.
  • Identifying your conflict resolution style.
  • Anger
  • Listening skills
  • Assertive behaviour
  • Your rights in the workplace
  • Negotiating and Mediating
Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight
Conflict Resolution in the Workplace by Stephen Haunts for Pluralsight

I have completed production on the course and I expect it to be out within the next month or so. It has been a fun course to research and write and I hope that it is useful to people.

RabbitMQ Series Part 1: What is RabbitMQ?

In this series of articles I am going to discuss how to configure and use RabbitMQ with the .NET client libraries. In this first article let’s talk about what message queueing is and then more specifically what RabbitMQ is.

What is Message Queueing

Message queuing gives you a mechanism to allow an application to asynchronously send a message to a receiver. This means that the sender and receiver do not need to interact with the message at the same time. A message is sent to a queue where it is stored until the receiver retrieves the message.

Message queues can be inter-process where the queue resides in memory on a single server or for integrating systems across multiple servers. This can be done by using in-memory queues but it is also common to use durable queues in which the messages are persisted to disk, meaning that messages are not lost should any system or server go offline for any period of time.

RabbitMQ Example Message Brokers
RabbitMQ Example Message Brokers

Message queuing systems come in many forms—both as commercial proprietry products and as open-source products. An example of a commercial solution is IBM MQ. Examples of open-source message queuing systems include RabbitMQ, JBoss Messaging , and Apache ActiveMQ.

%d bloggers like this: