scheduleService
形式
<scheduleService port="スケジュールサービスのポート番号" usePriority="true|false" randomSelect="true|false" hostChange="true|false" multiSchedulerCount ="スケジューラデーモンのプロセス数"/>
説明
スケジュールサービスを使用したRPCに関する指定をします。
<rpc>要素のuse属性でscdを指定した場合,この要素は省略できません。その場合,必ず<common>要素内または<profile>要素内にこの要素を一つ以上指定してください。
属性
●port="スケジュールサービスのポート番号" 〜〈符号なし整数〉((5001〜65535))
スケジュールサービスのポート番号を指定します。<tp1Server>要素のport属性が省略された場合,この属性の値が有効になります。
Client.NET構成定義の<rpc>要素use属性にscdを指定し,かつ<rpc>要素useMultiScheduler属性にtrueを指定した場合は,マルチスケジューラデーモンのポート番号を指定します。マスタスケジューラデーモンとマルチスケジューラデーモンのベースとなるポート番号が連続している場合は,マスタスケジューラデーモン(スケジュールサービス)のポート番号を指定することもできます。
この属性は省略できます。省略する場合,必ず<tp1Server>要素のport属性の値を指定してください。
なお,通信相手のTP1/Serverは,スケジュールサービスまたはマルチスケジューラデーモンを,この定義で指定したポート番号で起動する必要があります。TP1/Serverのスケジュールサービスまたはマルチスケジューラデーモンの指定については,マニュアル「OpenTP1 システム定義」を参照してください。
●usePriority="true|false" 〜《false》
サービス要求を受け付けた窓口となるTP1/Serverを優先して負荷分散するかどうか指定します。
この属性は省略できます。
true:サービス要求を受け付けた窓口となるTP1/Serverを優先して負荷分散します。
false:サービス要求を受け付けた窓口となるTP1/Serverを優先しません。TP1/Serverは,ノード間の負荷を分散します。
●randomSelect="true|false" 〜《false》
窓口となるTP1/Serverをランダムに選択するかどうかを指定します。
この属性は,窓口となるTP1/Serverを複数指定した場合にだけ有効です。
この属性は省略できます。
true:窓口となるTP1/Serverをランダムに選択します。
false:窓口となるTP1/Serverをランダムに選択しません。
●hostChange="true|false" 〜《false》
<tp1Server>要素に指定したサービス要求先スケジューラをRPCごとに分散させるかどうかを指定します。
RPCでのサービス要求が1度目の場合,<scheduleService>要素のrandomSelect属性にfalseを指定したとき,<tp1Server>要素で指定した先頭のサービス要求先スケジューラが選択されます。<scheduleService>要素のrandomSelect属性にtrueを指定したとき,<tp1Server>要素で指定したサービス要求先スケジューラがランダムに選択されます。
RPCでのサービス要求が2度目以降の場合,前回のサービス要求先スケジューラから<tp1Server>要素で指定した順にラウンドロビン方式でサービス要求先スケジューラが選択されます。
この属性は省略できます。
true:サービス要求先スケジューラをRPCごとに分散させます。
false:サービス要求先スケジューラをRPCごとに分散させません。
●multiSchedulerCount="スケジューラデーモンのプロセス数" 〜〈符号なし整数〉((1〜4096))《1》
スケジューラデーモンのプロセス数を指定します。スケジュールサービス定義のscdmulti定義コマンドの-mオプションに指定したプロセス数か,またはそれ以下の値を指定します。
この属性に指定するプロセス数は,<tp1Server>要素のport属性,または<scheduleService>要素のport属性に指定するポート番号によって,次のように異なります。
<tp1Server>要素のport属性,または<scheduleService>要素のport属性の指定値 |
<scheduleService>要素のmultiSchedulerCount属性の指定値 |
|
---|---|---|
マルチスケジューラデーモンのベースとなるポート番号 |
マルチスケジューラデーモンのプロセス数と同じ値,またはそれ以下の値を指定します。 |
|
マルチスケジューラデーモンの任意のポート番号 |
「マルチスケジューラデーモンのポート番号の最大 - <tp1Server>要素のport属性,または<scheduleService>要素のport属性に指定したポート番号 + 1」の値,またはそれ以下の値を指定します。 |
|
マスタスケジューラデーモンのポート番号 |
マスタスケジューラデーモンとマルチスケジューラデーモンのベースとなるポート番号が連続している場合 |
「マルチスケジューラデーモンのプロセス数 + 1」の値,またはそれ以下の値を指定します。 |
上記以外 |
1を指定するか,または指定を省略します(マルチスケジューラデーモンは使用できません)。 |
この定義は,Client.NET構成定義の<rpc>要素のuse属性にscdを指定し,かつ<rpc>要素のuseMultiScheduler属性にtrueを指定した場合に有効です。この場合,ポート番号は,次に示す範囲の値からランダムに選択します。
-
下限値:Client .NET構成定義の<tp1Server>要素のport属性,または<scheduleService>要素のport属性に指定したポート番号の値
-
上限値:下限値 + Client .NET構成定義の<scheduleService>要素のmultiSchedulerCount属性に指定したプロセス数 - 1
この属性は省略できます。
記述例
<scheduleService port="10010" usePriority="false" hostChange="false" multiSchedulerCount="10"/>