![]() ![]() ![]() ![]() ![]() ![]() |
This chapter contains the following topics:
WebSphere MQ is an XA compliant resource manager, and it is possible to access WebSphere MQ directly from Tuxedo server programs that issue MQ APIs such as MQGET and MQPUT1. Such server programs can be placed in a group associated with the WebSphere MQ Resource Manager, and no adapter program is required to access such servers.
Some customers have existing WebSphere MQ programs that they want to access from Oracle Tuxedo without having to modify their MQ programs or to write any MQ code on the Tuxedo side of their applications. For these customers, Oracle has developed the MQ Adapter for Tuxedo. The Oracle MQ Adapter for Tuxedo supports both transactional and non-transactional access to WebSphere MQ applications and data.
The Oracle MQ Adapter for Tuxedo provides communication between IBM WebSphere MQ applications and Oracle TUXEDO applications. The MQ Adapter consists of three TUXEDO servers:
These servers are managed in the TUXEDO environment. Figure 1-1 illustrates the flow of data when a tpcall ()
is issued from a TUXEDO client to an WebSphere MQ application.
The TUXEDO client calls the service advertised by the Tuxedo to WebSphere MQ server (TM_MQO). The configuration of the service dictates the queue manager name, queue name, and reply queue related to the service. The MQ Adapter then places the request on the WebSphere MQ queue to be processed by the WebSphere MQ application. The MQ Adapter waits for the reply message on the output queue. When the MQ Adapter receives the reply, it returns the response data to the client's outstanding tpcall()
.
The TMQUEUE _MQM server handles tpenqueue()
and tpdequeue()
requests from clients who want to place messages on WebSphere MQ queues. Figure 1-2 shows the enqueuing and dequeuing message flows:
tpdequeue ()
" id="wp1075397" border="0" hspace="0" vspace="0"/>
The WebSphere MQ to Tuxedo server (TM_MQI), processes service requests from WebSphere MQ applications to TUXEDO servers. Figure 1-3 illustrates the data flow for inbound requests:
The WebSphere MQ to Tuxedo server (TM_MQI) monitors specified queues for requests. When TM_MQI receives a request, it issues a tpcall()
request to the designated server. It then places the response data in the reply queue specified in the original request.
Both multi-threaded and single-threaded TM_MQI servers are supplied. Multi-threaded TM_MQI server creates one thread dedicated to each MQ queue, while single-threaded TM_MQI switches among MQ queues. Both TM_MQO and multi-threaded TM_MQI servers support MQ failure recovery. They try reconnection to WebSphere MQ automatically when they are configured.
![]() ![]() ![]() |