WebSphere MQ is messaging software that enables communication between InterChange Server and adapters. InterChange Server accesses the WebSphere MQ Server as an MQI Java client or JMS.
Install WebSphere MQ on the same network as InterChange Server. To install WebSphere MQ, you must be the ICS administrator.
WebSphere MQ can also be configured to be used as a JMS provider. For specific configuration instructions for this option, see "Configuring WebSphere MQ for JMS".
HA |
---|
For high availability, install WebSphere MQ on each machine in the cluster. Refer to the WebSphere MQ documentation for more information. |
The following sections describe how to install WebSphere MQ:
Installing the WebSphere MQ software
If you are upgrading WebSphere MQ and it is running as a Windows service, you must stop the service before upgrading to a newer version or applying a patch to the installation. If the service is not stopped, a series of WebSphere MQ errors may be generated when InterChange Server is restarted. To stop WebSphere MQ as a service, do the following:
Refer to the WebSphere MQ documentation for specific information on how to preserve existing data in the queues during an upgrade.
IBM delivers the 5.3.0.2 version of the WebSphere MQ software on a separate CD-ROM.
http://www.ibm.com/software/ts/mqseries/messaging/v53/.
The WebSphere MQ queues carry messages from the connector to InterChange Server. InterChange Server requires a message queue for each active connector. The configure_mq.bat file creates the queue manager and creates all queues specified in the crossworlds_mq.tst file. These files are located in \IBM\WebSphereICS\mqseries.
You may need to change the default configuration of your WebSphere MQ message queues to handle large objects or numbers of messages. This may require changing the log file size for the WebSphere MQ message queue, message queue properties, or both.
To change the log file size for a WebSphere MQ message queue, modify the configure_mq.bat file.
crtmqm -lp integer -ls integer -lf integer -q "%QUEUE%"
The parameters are as follows:
For example, you might change an existing crtmqm -q "%QUEUE%" statement as follows:
crtmqm -lp 20 -ls 10 -lf 2048 -q "%QUEUE%"
To change the maximum allowed length of the message queue, set values for the MAXDEPTH, MAXMSGL, AND MAXUMSGS properties in the crossworlds_mq.tst file as described in the following procedure:
WebSphere MQ message queues are set up by default to hold up to 5000 messages. During times of high traffic volumes or an initial WebSphere business integration system conversion, this default may be exceeded, causing errors and preventing connectors from posting messages to ICS. To help avoid this, you can increase the maximum number of messages allowed in a queue and the maximum number of uncommitted messages allowed across all queues. The preferred values may vary according to your specific circumstances. For example, if you are performing an initial WebSphere business integration system conversion, it is recommended that you set the maximum queue depth to at least 20,000 messages.
To change the MAXDEPTH setting, after each queue definition, add the following:
ALTER QLOCAL (QUEUENAME) MAXDEPTH (DEPTH DESIRED)
For example:
DEFINE QLOCAL(AP/EMailConnector/Server_Name) ALTER QLOCAL(AP/EMailConnector/Server_Name) MAXDEPTH(20000)
You can also alter the queue manager to allow for more than the standard uncommitted messages across all queues. The number of allowed uncommitted messages should be the sum of the maximum message depth (MAXDEPTH) of each queue. The memory used by InterChange Server should not increase unless the number of uncommitted messages increases.
To change the MAXUMSGS setting, add the following line:
ALTER QMGR MAXUMSGS (NUMBER)
For example:
ALTER QMGR MAXUMSGS (400000)
Modify this value only if you know you have business objects larger than the default MAXMSG value of 4 MB. To change the MAXMSGL value, add the following command after each queue definition:
ALTER QLOCAL (QUEUENAME) MAXMSGL (Maximum number of bytes to allow in a message)
Proceed to step 3.
ICS requires that you configure queues with the properties listed below. Specify the name of each queue as a standard property in the connector's configuration file.
You can configure the WebSphere MQ queues needed for your adapter using any of the following methods:
Tip |
---|
To make it easy to identify the adapter with which a queue is associated, use the name of the adapter as a prefix in the queue name. For example, name the adapter for Clarify's event delivery queue: ClarifyConnector/deliveryqueue. |
WebSphere Business Integration Adapters provides batch files to configure the WebSphere MQ queues needed for the adapters you are deploying.
The following files are located in ProductDir\mqseries:
The contents of the crossworlds_mq.tst file are shown below. You must manually edit this file. The top portion of the file contains the native MQ information, and the bottom portion contains JMS-specific information. Use this file to define the queues needed by each adapter that you are configuring. Edit the file as follows:
DEFINE QLOCAL(IC/SERVER_NAME/DestinationAdapter) DEFINE QLOCAL(AP/DestinationAdapter/SERVER_NAME)
These apply only to business integration systems that use WebSphere InterChange Server.
***************************************************************/ * */ * Define the local queues for all Server/Adapter pairs. */ * For MQ queues, they must have the following definition: */ * Application = DEFINE QLOCAL (AP/AdapterName/ServerName) */ * */ * Example: */ * DEFINE QLOCAL(AP/ClarifyConnector/CrossWorlds) */ * */ * DEFINE QLOCAL(AP/SAPConnector/CrossWorlds) */ * */ * If your server is named something different than 'CrossWorlds' */ * make sure to change the entries to reflect that. */ ********************************************************************/ DEFINE QLOCAL(IC/SERVER_NAME/DestinationAdapter) DEFINE QLOCAL(AP/DestinationAdapter/SERVER_NAME) ********************************************************************/ * For each JMS queue (delivery Transport is JMS), * default values follow the convention: * AdapterName/QueueName ********************************************************************/ DEFINE QLOCAL(AdapterName/AdminInQueue) DEFINE QLOCAL(AdapterName/AdminOutQueue) DEFINE QLOCAL(AdapterName/DeliveryQueue) DEFINE QLOCAL(AdapterName/RequestQueue) DEFINE QLOCAL(AdapterName/ResponseQueue) DEFINE QLOCAL(AdapterName/FaultQueue) DEFINE QLOCAL(AdapterName/SynchronousRequestQueue) DEFINE QLOCAL(AdapterName/SynchronousResponseQueue) ********************************************************************/ * Define the default CrossWorlds channel type */ ********************************************************************/ DEFINE CHANNEL(CHANNEL1) CHLTYPE(SVRCONN) TRPTYPE(TCP) ********************************************************************/ * End of CrossWorlds MQSeries Object Definitions */ ********************************************************************/
For information about configuring queues using WebSphere MQ Explorer, open WebSphere MQ Explorer and refer to its online help.
For information about configuring queues using WebSphere MQ commands, see WebSphere MQ: System Administration Guide and WebSphere MQ: Script (MQSC) Command Reference.
You must configure a WebSphere MQ queue manager and a WebSphere MQ listener.
You must create a queue manager the first time you configure an InterChange Server system. Click Start > Programs > IBM WebSphere InterChange Server > IBM WebSphere MQ > Configure Queue Manager.
A default queue manager is created and is given the name you defined during installation.
After you create the queue manager, you must add the WebSphere MQ listener as a Windows service and configure it for automatic startup:
There should be three entries for your particular queue listed in the right pane: Queue Manager, Command Server, and Channel Initiator. (If you do not see a Channel Initiator, it will appear after you reboot your system.)
You must use a unique port number for each listener. Assign the port a number other than the default of 1414,then click OK.
For every connector configured for use with WebSphere MQ for JMS transport, use the Connector Configurator tool to edit the local connector's configuration file.
WebSphere MQ should use the JMS transport because native WebSphere MQ relies on CORBA for its administration and other components. When used as a JMS provider there is no longer a reliance on CORBA. Additionally native MQ only persists incoming events to the server.
Specify a queue manager and configure the property values as listed in Table 5. In this example, JmsConnector is the
connector being configured
Table 5. Property values for JMS transport
Property | Value |
---|---|
AdminInQueue | JMSCONNECTOR\ADMININQUEUE |
AdminOutQueue | JMSCONNECTOR\ADMINOUTQUEUE |
DeliveryQueue | JMSCONNECTOR\DELIVERYQUEUE |
FaultQueue | JMSCONNECTOR\FAULTQUEUE |
RequestQueue | JMSCONNECTOR\REQUESTQUEUE |
ResponseQueue | JMSCONNECTOR\RESPONSEQUEUE |
SynchronousRequestQueue | JMSCONNECTOR\SYNCHRONOUS
REQUESTQUEUE |
SynchronousResponseQueue | JMSCONNECTOR\SYNCHRONOUS
RESPONSEQUEUE |
You can leave the UserName and Password blank unless you are accessing the queue manager using the client mode.
Specify the local configuration file that has been updated for the specific connector in the following location:
Where filename is the fully qualified path of the local configuration file that has entries for that connector.
Reload the repository and restart InterChange Server and the connector after you make these changes. Proceed to Starting InterChange Server for the first time.