Hitachi

Cosminexus V11 BPM/ESB基盤 サービスプラットフォーム 解説


5.4 データ変換処理のXMLパーサプール機能

データ変換の処理では,次に示すJavaのXMLパーサによってXMLを解析しています。

これらのXMLパーサのインスタンスは複数のスレッドで共有できないため,複数のスレッドで同時使用する場合は,スレッドごとにXMLパーサを生成しています。XMLパーサの生成処理は時間を要するため,解析ごとに生成すると性能が劣化します。

XMLパーサプール機能を使用すると,メモリ上に作成されたXMLパーサプールに生成したXMLパーサを貯めておくことができます。XMLパーサプールへ貯めたXMLパーサは,システム全体で共有し,再利用できるため,処理の効率向上が図れます。

生成したXMLパーサをメモリ上に作成されたXMLパーサプールに貯めておく処理の流れを次の図に示します。

図5‒8 生成したXMLパーサをメモリ上に作成されたXMLパーサプールに貯めておく処理の流れ

[図データ]

XMLパーサプールへ貯めたXMLパーサを再利用する処理を次の図に示します。

図5‒9 XMLパーサプールへ貯めたXMLパーサを再利用する処理

[図データ]

XMLパーサプールに貯めることができるXMLパーサの最大数は,オプションで指定した最大プール数の2,147,483,647です。XMLパーサを同時使用するスレッド数が最大プール数を超える場合は,他のスレッドでの使用が終わるまで処理を停止し,未使用となり次第処理を続行します。

XMLパーサを同時使用するスレッド数が最大プール数を超えた場合の処理を次の図に示します。

図5‒10 XMLパーサを同時使用するスレッド数が最大プール数を超えた場合の処理

[図データ]

XMLパーサプール機能を使用するための設定方法については,マニュアル「サービスプラットフォーム システム構築・運用ガイド」の「2.3.9 J2EEサーバ用ユーザプロパティファイル(usrconf.properties)を設定する」のXMLパーサプール機能オプションに関する記述を参照してください。