IBM MQ for Java Classes

Faizal Musa
2 min readJun 3, 2018

Part 1: Introduction to beginners.

Stack of mails

Before consuming IBM MQ facilities, few notions are worth understanding. Understanding these concepts assists the developer uses the IBM MQ client library and its documentation.

This article assumes, readers already understand basic Message-Oriented Middleware(MoM) concepts such as Point-to-Point, Publisher-Subscriber, Queue, Topic, etc.

First, there is the client. The backend application uses the client to send a message to the queue. This queue is managed and owned by the Queue Manager(QMGR). Hence the client needs to be connected to the Queue Manager. There are two connection modes available between the client and the Queue Manager. They are:-

  1. Binding
    The client establishes channel connectivity with the Queue Manager via the Java Native Interface (JNI) libraries. Generally, the binding mode is faster than non-binding. However, this requires the client to run on the same host or server with the Queue Manager.
  2. Non-Binding
    The client establishes channel connectivity with the Queue Manager via the TCP/IP connection. The client could be running with the same system as the Queue Manager or at a different host.

The next section of this article will focus on the Non-Binding[2] mode. What is the meaning of an MQI channel and to configure connectivity between the MQI client and the Queue Manager.

At the heart of the client and MQ server connectivity, there is a channel. A channel encapsulates information such as MQ server hostname, port number, authentication credentials, queue manager name, and not least, the MQI channel name itself.

Since the client connected with the queue manager using the MQI channel, therefore the client is identified as an MQI client. Figure 1 below illustrates, the MQI client uses the information above to establish the MQI channel with the Queue Manager.

Figure 1: The MQI channel between client and server.

Usually, the MQ administrator configures the MQI channel parameters at the Queue Manager. For the MQI client to connect, it has to set channel parameters at its client API and then establish a connection with the Queue Manager.

--

--