Introduction to the RPC Server for IBM MQ

The RPC Server for IBM® MQ runs as an RPC server and processes RPC client calls. It is used to send messages to and receive messages from an IBM MQ queue. This means that existing EntireX wrappers can be used for communication with IBM MQ. This document covers the following topics:


Overview

The RPC Server for IBM® MQ allows standard RPC clients to send and receive asynchronous and synchronous messages to an IBM® MQ queue manager. The RPC Server for IBM MQ uses the IBM® MQ base Java classes from IBM. It can connect to an IBM® MQ either as an IBM® MQ client using TCP/IP (client mode) or in so-called bindings mode where it is connected directly to IBM® MQ running on the same machine. Note that on z/OS, only bindings mode is supported.

The RPC Server for IBM MQ runs as an RPC server and processes RPC client calls. An RPC client can send an asynchronous message (MQ PUT call) if it uses a program with IN parameters. An RPC client can receive an asynchronous message if it uses a program with OUT parameters (MQ GET call). The receiver must use the same parameters in a program as the sender, but with the direction OUT instead of IN. Processing of synchronous messages (request/reply scenario) is possible if the program uses a mixture of IN and OUT parameters. For possibilites on how RPC data is mapped to MQ messages, see Mapping RPC Data to the MQ Message Buffer. The images below illustrate message transport when sending and receiving messages. If the RPC client application uses conversational RPC, the MQ calls are issued transactionally (using the SYNCPOINT option), a Backout Conversation will send a backout to the queue manager, and a Commit Conversation will send a commit to the queue manager.

The RPC Server for IBM MQ registers to one RPC service. On the MQ side it uses one input queue and one output queue.

Sending a Message to an IBM MQ Queue

graphics/sendMessage.png

Note:
All messages sent to an RPC Server for IBM MQ instance via a specific RPC service are put on the same MQ output queue.

Receiving a Message from an IBM MQ Queue

graphics/receiveMessage.png

Note:
All messages retrieved by the RPC Server for IBM MQ from the MQ input queue are passed to the same RPC service. Messages are retrieved in the order they appear on the queue.