+

Search Tips   |   Advanced Search

Message production and consumption by using remote message points

When an application produces or consumes messages to or from a messaging engine that is not the same as the messaging engine to which the application is connected, remote message points are used to manage the flow of messages between the messaging engines.


Message production

When an application produces messages to a queue-type destination at a messaging engine that is remote from the messaging engine that owns the queue point, a remote queue point is required to manage the delivery of messages destined for the queue point. When an application produces messages to a publish/subscribe type destination, the messaging engine for the producing application will have a local publication point. If subscribing applications to the same destination are attached to different messaging engines in the bus, remote publication points are required to manage the delivery of messages to those remote messaging engines.

If the destination is mediated, messages must first be processed at a mediation point. If the mediation point is on a different messaging engine than the application, a remote mediation point is required to manage the delivery of the messages to the mediation point.

These outbound messages must be delivered to the message point in a reliable manner in accordance with the reliability of the message. To provide these levels of reliability, any message with a reliability greater than "best effort non-persistent" is temporarily queued at the remote message point for the producer messaging engine. The message is queued until the messaging engine that owns the message point confirms the successful arrival of the message, then the producer messaging engine removes its copy of the message from the remote message point. This prevents loss or re-ordering of messages in the event of failures.

Under normal conditions messages will be queued at a remote message point only briefly, but if a failure occurs or the system is overloaded, messages might remain at the remote message point for longer. We can assess the health of the system by monitoring the outbound messages on a remote message point.


Message consumption

A consuming application can be attached to a messaging engine that does not own the store of messages that the application consumes from. When an application consumes from a queue-type destination, the application might be remote from the queue point; when an application consumes from a publish/subscribe type destination, the application might be remote from the subscription. When either of these cases occurs, a remote message point is required to manage message requests made by the application.

Each time an application requests a message from a remote store of messages, a message request is made from the messaging engine for the application to the messaging engine that owns the messages. These message requests are maintained by the remote message point until they are satisfied, either with a message or when the request comes to an end (the requesting application terminates the request).


Related concepts

  • Message reliability levels - JMS delivery mode and service integration quality of service


    Related tasks

  • Remove a messaging engine from a cluster

  • deleteSIBEngine command


    Related information:

  • Remote mediation points [Collection]
  • Remote mediation points [Settings]
  • Message Requests [Collection]
  • Outbound messages [Collection]