メッセージ・フロー内での並行処理を許可し、一方で別々の実行グループ内のメッセージ・フローの間でメッセージをシリアライズするには、シリアライゼーション・トークンの有効範囲は単一の実行グループ内に制限されます。
この例は、シリアライゼーション・トークンが、ブローカー上で実行する単一の実行グループ内に制限されていることを示しています。
- 別々のメッセージ・フロー (この事例では MyFlowA および MyFlowB) 内の 2 つの MQInput ノードが、同じ実行グループ MyGroupA 内で実行しています。両方の MQInput ノードは、同じシリアライゼーション・トークンを使用していても、共用入力キューから並行してメッセージを取得します。
- 単一のメッセージ・フロー内でのシリアライゼーションが必要な場合、メッセージ・フロー属性 additional instances は、デフォルトの設定値であるゼロに設定する必要があります。ただし、スループットを大きくする必要があって、フロー内の入力のシリアライゼーションが重要でない場合、additional
instances をゼロより大きい値に設定できます。
- MQInput ノードの serialization token 属性を使用しても、同じ実行グループ内で作動しているメッセージ・フローの間の入力をシリアライズしません。ただし、属性の設定は、その実行グループ内での処理に悪影響を与えるものではありません。
- この方法で、1 つのブローカーのメッセージ・フロー内でスループットを最大化しつつ、ブローカーの間で入力をシリアライズすることが可能です。これが便利なのは、現在アクティブなブローカーを保守のために停止したり、または予期せず障害が起こった場合に備えて、1 つ以上のブローカーを即時の待機として実行させておくという要件がある場合です。