多数の XPath 式を使用する場合には、実行グループの XPath キャッシュ・サイズがパフォーマンス・ボトルネックとなることがあります。 XPath キャッシュのサイズを変更すると、メッセージ・フローのパフォーマンスが改善される場合があります。
実行グループは、メッセージ・フローの実行時に繰り返し使用される XPath 式の構文解析と再作成に必要なプロセッサーの使用を抑えるために、コンパイルされた XPath 式のキャッシュを維持します。 このキャッシュは、実行グループ内のすべてのメッセージ・フローで共有されます。 このキャッシュのデフォルトのサイズは 100 です。 ただし、単一のフロー呼び出しで多数の XPath 式を使用する場合には、このデフォルト・サイズがパフォーマンス・ボトルネックとなり、キャッシュの効果を完全に打ち消すことがあります。
メッセージ・フローの呼び出しごとに多数の XPath 式が作成される場合は、メッセージ・フローのパフォーマンスを最適化するために、このキャッシュのサイズを変更する必要が生じることがあります。 それぞれのメッセージ・フロー呼び出しで多数の XPath 式が評価される、高度にマルチスレッド化された環境では、キャッシュ上のスレッド競合をなくすためにこのキャッシュを無効にする必要が生じることがあります。
mqsichangeproperties <broker> -e <eg> -o ExecutionGroup -n compiledXPathCacheSizeEntries -v <value>
ここで、<value> は、設定するキャッシュ・サイズです。
設定できるサイズは 100 以上の任意の値です。
値 0 は、キャッシュを無効にすることを意味します。
デフォルト値は 100 です。 mqsireportproperties <broker> -e <eg> -o ExecutionGroup -n compiledXPathCacheSizeEntries
また、以下のようにして、他の ExecutionGroup レベルのプロパティーのレポートに含めて表示することもできます。
mqsireportproperties <broker> -e <eg> -o ExecutionGroup -a
mqsichangeproperties BRK1 -e EG1 -o ExecutionGroup -n compiledXPathCacheSizeEntries -v 0