Managing Ensemble Productions - InterSystems Documentation
Managing Ensemble Productions - InterSystems Documentation
Managing Ensemble Productions - InterSystems Documentation
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
What to Manage<br />
3.10.2 Messages in Progress<br />
It is not always possible for a message to be immediately Delivered. Most host classes provide some level of recovery from<br />
initial obstacles that a message might encounter. Obstacles to delivery might arise for any number of reasons, including<br />
circumstances outside the <strong>Ensemble</strong> system (an external server goes down) or the need to wait for a decision from another<br />
business process or human participant (workflow). The different message status values help you to track what is happening<br />
to message that are not yet Delivered. Details are as follows:<br />
• In many cases, business operations are designed to retry a message a given number of times, at given intervals, before<br />
declaring the message failed or announcing a timeout. Many outbound adapters offer configurable parameters that<br />
control the time interval and number of retries to make. If this is the case, you can set these values when you configure<br />
Specific Settings for the business operation using the <strong>Ensemble</strong> Management Portal, without changing any classes in<br />
Studio.<br />
• Some business operations are designed to set the status of any failed messages to Suspended. Alternatively, you can<br />
manually suspend a message from the Instances display on the [<strong>Ensemble</strong>] > [Host Monitor] page. In either case,<br />
<strong>Ensemble</strong> automatically places all Suspended messages on a special queue. A system administrator can find these<br />
message on the [<strong>Ensemble</strong>] > [Maintenance] > [Suspended] page. An inspection of the routing information or contents<br />
of a specific message might reveal the reason why the message failed. For example, if the problem is that an external<br />
destination went out of service, a change can be made to reestablish communication with that server. Then the Suspended<br />
messages can be resent to the external server by clicking a command on the [<strong>Ensemble</strong>] > [Maintenance] > [Suspended]<br />
page or by clicking Resend Messages on the [<strong>Ensemble</strong>] > [Messages] page.<br />
• There is a message status that does not indicate either delivery or failure; that is the Deferred status. A business operation<br />
can set the status of a response message to Deferred before it exits. The Deferred response can be picked up and sent<br />
back to the original requester by any business host in the production. Between the time when the business operation<br />
defers the response, and when the response is finally sent, the response message has a status of Deferred. The sender<br />
of the original message is unaware of the fact that the message was Deferred. If the original call was synchronous, the<br />
call does not return to the sender until the deferred response is sent.<br />
3.11 Working with Queues<br />
In the <strong>Ensemble</strong> context, a queue is simply a list of message objects waiting to be processed by a business host — a business<br />
service, a business process, or a business operation — within a production. No queue setup is required. <strong>Ensemble</strong> manages<br />
all queues automatically; see the Queues section in the “<strong>Ensemble</strong> Messages” chapter of Developing <strong>Ensemble</strong> <strong>Productions</strong><br />
for details.<br />
The following portal commands are available to monitor queue status.<br />
Queue Task<br />
List the messages on a specific queue. Provide a facility for viewing these<br />
messages in detail.<br />
Monitor the activities of a message queue in detail.<br />
Quickly view the real-time status of message queues.<br />
Sequence of Portal Commands<br />
Queues, Contents<br />
Queues<br />
System Monitor<br />
Queues offer one of the most useful means of quickly spotting a problem in the system. When there is buildup on a queue,<br />
it usually means something needs to be repaired. For example:<br />
38 <strong>Managing</strong> <strong>Ensemble</strong> <strong>Productions</strong>