Apama 10.15.0 | Connecting Apama Applications to External Components | Standard Connectivity Plug-ins | The Universal Messaging Transport Connectivity Plug-in | Setting up Universal Messaging for use by Apama
 
Setting up Universal Messaging for use by Apama
For Apama to use the Universal Messaging message bus, there are some required Universal Messaging tasks. These steps will be familiar to experienced Universal Messaging users.
Plan and implement the configuration of the Universal Messaging cluster that Apama will use. The recommendation is to have at least three Universal Messaging realms in a cluster because this supports Universal Messaging quorum rules for ensuring that there is never more than one master in a cluster. However, if you can have only two Universal Messaging realms, you can use the isPrime flag to correctly configure a two-realm cluster. For details about configuring a Universal Messaging cluster, see the topics in the Universal Messaging documentation that describe the following:
*Quorum
*Clusters with Sites, which describes an exception to the quorum rule.
To set up Universal Messaging for use by Apama, do the following for each Universal Messaging realm to be used by Apama:
1. Use the Software AG Installer to install Universal Messaging. Make sure to select the option to install the Universal Messaging client libraries.
The Universal Messaging server can be installed on any machine (not necessarily on the same machine as Apama), but you must ensure that the Universal Messaging client libraries are present in the same Software AG installation directory as Apama, as these libraries are required by the Universal Messaging transport connectivity plug-in.
Note: 
If you are using JMS or Digital Event Services to access Universal Messaging, installing the client libraries is not required.
2. Start a Universal Messaging server.
3. Use Universal Messaging's Enterprise Manager or Universal Messaging client APIs to set the access control lists of the Universal Messaging server to allow the user that the correlator is running on. See the Universal Messaging documentation for details.
4. By default, Apama automatically creates channels on the Universal Messaging server (that is, the configuration option missingChannelMode is set to create; see Configuring the connection to Universal Messaging (dynamicChainManagers)).
In production, it is usually better to change missingChannelMode to error and then add the channels that Apama will use explicitly using Universal Messaging's Enterprise Manager (or the client APIs). In this case, configure the following Universal Messaging channel attributes. Together, these attributes provide behavior similar to that provided by using the Apama correlator tool engine_connect.
*Set Channel Capacity to 20000 or some suitable number, at least 2000 events. A number higher than 20,000 would allow larger bursts of events to be processed before applying flow control but would not affect overall throughput.
*Select Use JMS engine. See also the information on engine differences in the Universal Messaging documentation.
*Set Honour Capacity when channel is full to true.
These channel attributes provide automatic flow control. If a receiver is slow, then event publishers block until the receivers have consumed events.
Other channel attributes are allowed. However, it is possible to set Universal Messaging channel attributes in a way that might prevent all events from being delivered to all intended receivers, which includes correlators. For example, Universal Messaging can be configured to conflate or throttle the number of events going through a channel, which might cause some events to not be delivered. Remember that delivery of events is subject to the configuration of the Universal Messaging channel. Consult the Universal Messaging documentation for more details before you set channel attributes that are different from the recommended attributes.