The merits and options of the message queuing functionality integrated in openUTM have already been mentioned briefly in section "Message queuing".
For convenience, the main advantages are again listed briefly below:
temporal and geographical independence from the communicating components
absolutely reliable message transmission guaranteed through the transaction-oriented deferred delivery mechanism
independence of the current connection
Message queuing (MQ) is a form of communication in which messages are not exchanged immediately, rather are buffered in intermediate queues before being dispatched (store and forward). These messages are known as asynchronous messages. The communication is processed in the form of asynchronous jobs. An asynchronous job consists of the asynchronous message, the recipient of the message and possibly also the desired time of execution.
A distinction is drawn between UTM-controlled queues and service-controlled queues, depending on who is responsible for processing the messages sent to the queue.
In the case of UTM-controlled queues, the queuing mechanism is made available in its entirety by openUTM. In other words, openUTM also offers triggering functions in addition to pure queuing functionality.
In the case of service-controlled queues, a service is responsible for the further processing of the message. In other words, openUTM executes pure queuing functionality.
The control options described on "Control options for message queues" are available for both output and background jobs:
time control
messages returned via confirmation jobs
queue administration
MQ calls of the KDCS interface are available for message queuing. These are introduced in section "Message queue calls of the KDCS interface".