WebSphere Message Brokers
File: ac09055_
Writer: Karen Cameron

Reference topic

This build: July 31, 2007 21:17:55

Configurable message flow properties

When you add a message flow to a broker archive (bar) file in preparation for deploying it to a broker, you can set additional properties that influence its runtime operation. These properties are available for review and update when you select the Configure tab for the broker archive file.

Additional Instances
Specifies the number of additional threads that the broker can use to service the message flow. These additional threads are created only if there are sufficient input messages. You can have up to 256 threads. The default value is 0. Additional threads can increase the throughput of a message flow but you should consider the potential impact on message order.

If the message flow processes WebSphere MQ messages, you can configure the message flow to control the message order. Set the Order Mode property on the MQInput node accordingly. You might also need to set the Commit by Message Group and Logical Order properties.

The broker opens the input queue as shared (using the MQOO_INPUT_SHARED option), so you must ensure that the input queue has been defined with the SHARE property to enable multiple broker threads to read from the same input queue.

Start of changeIf you have multiple input nodes in your message flow, the available additional threads might not be allocated evenly between the different input nodes. In an extreme case, all the threads might be allocated to a single input node, and only one aspect of the message flow's throughput is improved. To avoid this problem, you can use the Additional Instances Pool property, together with the Additional Instances property, to allocate a pool of additional instance threads for each input node.End of change

For more information about the node properties, refer to the MQInput node.

Start of changeAdditional Instances PoolEnd of change
Start of changeSpecifies whether additional instance threads for an input node are allocated from a thread pool for the whole message flow, or from a thread pool for use by that node only. The value of the Additional Instances property that is specified for the node controls the number of instances in the pool.
If your message flow contains multiple input nodes, use the Additional Instances Pool and Additional Instances properties to ensure that each of the input nodes is allocated the required number of additional instances. Setting these properties allows you to fine tune your message flow operation, so if you know that one input node will receive twice as much input as another node, you can give it twice the number of additional threads.
  • To request additional instance allocation from the message flow thread pool, set Additional Instances Pool to Use pool associated with message flow.
  • To request additional instance allocation from the node's own thread pool, set Additional Instances Pool to Use pool associated with node.

If the Additional Instances Pool property is not available for a node, the behavior is the same as if Additional Instances Pool is set to Use pool associated with message flow. You can set this property on the MQInput node, FileInput node, WebSphere Adapters input nodes, and Web Services input nodes.

End of change
Commit Count
Specifies how many input WebSphere MQ messages are processed by a message flow before a syncpoint is taken (by issuing an MQCMIT).

The default value of 1 is also the minimum permitted value. Change this property to avoid frequent MQCMIT calls when messages are being processed quickly and the lack of an immediate commit can be tolerated by the receiving application.

Use the Commit Interval to ensure that a commit is performed periodically when not enough messages are received to fulfill the Commit Count.

This property has no effect if the message flow does not process WebSphere MQ messages.

Commit Interval
For WebSphere MQ messages, specifies a time interval at which a commit is taken when the Commit Count property is greater than 1 (that is, where the message flow is batching messages), but the number of messages processed has not reached the value of the Commit Count property. It ensures that a commit is performed periodically when not enough messages are received to fulfill the Commit Count.

The time interval is specified in seconds , as a decimal number with a maximum of 3 decimal places (millisecond granularity). The value must be in the range 0.000 through 60.000. The default value is 0.

This property has no effect if the message flow does not process WebSphere MQ messages.

Coordinated Transaction
Controls whether the message flow is processed as a global transaction, coordinated by WebSphere MQ. Such a message flow is said to be fully globally-coordinated. The default value is No.

Use coordinated transactions only where you need to process the message and any database updates performed by the message flow in a single unit-of-work, using a two-phase commit protocol. This means that both the message is read and the database updates are performed, or neither is done.

If you change this value, ensure that the broker's queue manager is configured correctly. If you do not set up the queue manager correctly, the broker generates a message when the message flow receives a message to indicate that, although the message flow is to be globally coordinated, the queue manager configuration does not support this.

See Supported databases for information about which databases are supported as participants in a global transaction, and the WebSphere MQ System Administration book for how to configure WebSphere MQ and the database managers.

This property has no effect if the message flow does not process WebSphere MQ messages.

User-defined properties
A user-defined property (UDP) is a user-defined constant whose initial value can be modified, at design time, by the Message Flow editor, or overridden, at deployment time, by the Broker Archive editor. The advantage of UDPs is that their values can be changed by operational staff at deployment time. If, for example, you use UDPs to hold configuration data, you can configure a message flow for a particular machine, task, or environment at deployment time, without having to change the code at the node level.

For introductory information about UDPs, see User-defined properties in ESQL.

For information about configuring UDPs at deployment time, see Configuring a message flow at deployment time using UDPs.

You can view and update other configurable properties for the message flow. The properties that are displayed depend on the nodes within the message flow; some have no configurable properties to display. The node properties that are configurable are predominantly system-related properties that are likely to change for each broker to which the message flow is deployed. These properties include data source names and the names of WebSphere MQ queues and queue managers. For full details of configurable properties for a node, see the appropriate node description.

Related concepts
Message flows overview
User-defined properties in ESQL
Deployment overview
Related tasks
Developing message flows
Editing configurable properties
Configuring a message flow at deployment time using UDPs
Related reference
Built-in nodes
Notices | Trademarks | Downloads | Library | Support | Feedback

Copyright IBM Corporation 1999, 2007Copyright IBM Corporation 1999, 2007. All Rights Reserved.
This build: July 31, 2007 21:17:55

ac09055_ This topic's URL is: