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

[目次][用語][索引][前へ][次へ]

5.1.3 Webサービス(SOAP通信)に関する多重度

<この項の構成>
(1) 同時実行スレッド数
(2) 占有スレッド数

(1) 同時実行スレッド数

Webサービス(SOAP通信)を使用する場合は,実行環境で設定しているWebサーバ(HTTPサーバ)の同時実行スレッド数も関係します。

標準受付(Webサービス)およびSOAP受付が複数ある場合,各受付に設定した同時実行スレッド数の合計より,Webサーバに設定した全体の同時実行スレッド数が優先されます。そのため,Webサーバに設定した全体の同時実行スレッド数が,各受付に設定した同時実行スレッド数の合計より小さいと,一度に多くの要求が来ても同時に処理ができないため,性能上のボトルネックになることがあります。

Webサービス(SOAP通信)を使用する場合のボトルネックを次の図に示します。

図5-5 Webサービス(SOAP通信)を使用する場合のボトルネック

[図データ]

Webサービス(SOAP通信)に関する多重度は,次のように設定します。

(2) 占有スレッド数

Webサーバ(HTTPサーバ)の同時実行スレッド数が十分な数を確保できない状況であっても,個々のリクエスト受付で必ず最低限の実行をする場合は,占有スレッド数を定義します。

占有スレッド数を定義した場合は,Webサーバ(HTTPサーバ)の同時実行スレッド数以上の要求が個別のリクエスト受付に来た場合でも,必ず指定した数だけは同時に実行されます。

ほかのリクエスト受付に要求が来ていない場合は,最大同時実行数まで同時に実行できます。

HCSCサーバ内の占有スレッド数は,「表5-8 標準受付の占有スレッド数を設定するプロパティ」および「表5-9 ユーザ定義受付の占有スレッド数を設定するプロパティ」に示すように設定します。

表5-8 標準受付の占有スレッド数を設定するプロパティ

定義ファイル プロパティ 内容
HCSCサーバランタイム定義ファイル request-soap.exclusive.threads 同期(Webサービス・SOAP1.1)の標準受付の占有スレッド数
request-soap1_2.exclusive.threads 同期(Webサービス・SOAP1.2)の標準受付の占有スレッド数

表5-9 ユーザ定義受付の占有スレッド数を設定するプロパティ

定義ファイル プロパティ 内容
ユーザ定義受付ランタイム定義ファイル user-defined-reception-soap.exclusive.threads 占有スレッド数

最大同時実行数と占有スレッド数の関係を次の図に示します。

図5-6 最大同時実行数と占有スレッド数の関係

[図データ]

図5-6 最大同時実行数と占有スレッド数の関係」に示すように,標準受付,2つのユーザ定義受付,およびWebサーバ(HTTPサーバ)を次のように設定した場合,標準受付は必ず2つのスレッドを占有します。

そのため,Webサーバ(HTTPサーバ)の同時実行数に指定した5件以上の要求が来ると,2つのスレッドは標準受付の実行のために使用され,残りの3つのスレッドを使ってユーザ定義受付が動作します。

ただし,最大キュー滞留数,標準受付の同時実行数,占有スレッド数,およびWebサーバ(HTTPサーバ)の同時実行数が「図5-6 最大同時実行数と占有スレッド数の関係」と同じ場合で,「図5-7 占有スレッド数を指定した受付に要求が来ない場合」に示すように,占有スレッド数を指定した標準受付に要求が来ていないときでも,必ず2つはスレッドを占有して実行する状態になります。また,ほかのユーザ定義受付では,それぞれ同時実行数が2件で合計の同時実行数は4件になるはずですが,Webサーバ(HTTPサーバ)の同時実行数5件であるため,残り3つしか処理できなくなります。ほかのリクエスト受付の同時実行数が増えることはありません。

図5-7 占有スレッド数を指定した受付に要求が来ない場合

[図データ]