Skip to main content

JobServers

JOB サーバの数を入力します。

構文

[Startup]    JobServers=n

n は、0 から 2000 の範囲の整数です。既定値は 0 です。

説明

JobServers パラメータは、維持したい使用可能なジョブ・サーバの目標数と、起動時に作成されるジョブ・サーバの数の両方を設定します。ジョブ・サーバの合計数ではありません。使用可能なジョブ・サーバの数が目標数を下回ると、使用可能なジョブ・サーバの数を維持するために、さらに多くのジョブ・サーバが作成されます。

多数の JOB サーバを実行すると、大量のメモリとプロセスを消費しますが、InterSystems IRIS ではシステム・レベルでプロセスを起動して初期化する必要がないため、ジョブ起動プロセスを高速化できます。

^JOBSRV ルーチンを使用すると、ジョブ・サーバに関する情報 (ジョブ・サーバの構成や数など) を表示できます。

システムの動作

ジョブ・サーバが有効な場合、システムは 5 秒ごとに監視プロセスを実行し、使用可能なジョブ・サーバ数を確認します。使用可能なジョブ・サーバの数が目標数を下回ると、目標に達するまで、ジョブ・サーバが追加で作成されます。

監視プロセスでは、3 分ごとに、使用可能なジョブ・サーバの数が目標数を上回っているかどうかも確認します。上回っている場合、ジョブ・サーバを 1 つ停止します。ただし、実行中のジョブ・サーバの合計数が、JobServers パラメータで設定された数を下回ることはありません。

JobServers パラメータが 0 (ジョブ・サーバを無効化) に変更されると、監視プロセスは使用可能なすべてのジョブ・サーバを直ちに停止し、さらに使用されていたジョブ・サーバが使用可能になるとこれを停止します。

使用されていたジョブ・サーバがその作業を完了すると、これらは自動的に使用可能なプールに戻されます。

目標数の決定

システムは、効果的な目標数に基づいて、使用可能なジョブ・サーバの数を維持します。効果的な目標数は、パラメータ値か、ジョブ・サーバの合計数によって決定される動的な目標数 (以下の表を参照) の、いずれか小さい方によって決まります。例えば、JobServers=7 と設定した場合、効果的な目標数は、ジョブ・サーバの合計数が 20 未満であれば 5、20 以上であれば 7 となります。以下のでこれを詳細に説明します。

ジョブ・サーバの合計数 動的な目標数
1 – 4 パラメータにより決定
5 – 19 5
20 – 99 10
100 以上 20

パラメータ : JobServers=4

新しいプロセスが開始されるたびに、使用可能なジョブ・サーバが 1 つ使用されるため、システムは新しいジョブ・サーバを 1 つ作成します。

  パラメータ 動的な目標 効果的な目標 使用可能 使用中 合計
開始時 4 該当なし 4 4 0 4
1 個のプロセス 4 該当なし 4 4 1 5
5 個のプロセス 4 該当なし 4 4 5 9
パラメータ : JobServers=12

システムは、最初 12 個の使用可能なジョブ・サーバで開始されますが、効果的な目標は 5 個です。使用可能なジョブ・サーバの数が 5 個を下回ると、効果的な目標値を維持するようにジョブ・サーバが追加で作成されます。

15 個のジョブ・サーバが使用されている場合、ジョブ・サーバの合計数は 20 個になります (使用中が 15 個、使用可能が 5 個)。これにより、効果的な目標は 10 個に増加し、システムはさらに 5 個のジョブ・サーバを作成します。これでジョブ・サーバは合計 25 個 (使用中が 15 個、使用可能が 10 個) になります。

90 個のジョブ・サーバが使用されている場合、ジョブ・サーバの合計数は 100 個になります (使用中が 90 個、使用可能が 10 個)。これにより、動的な目標は 20 個に増加します。パラメータは動的な目標より小さいため、パラメータが効果的な目標になります。システムは、効果的な目標 12 個を満たすため、2 個だけ追加でジョブ・サーバを作成します。

  パラメータ 動的な目標 効果的な目標 使用可能 使用中 合計
開始時 12 5 5 12 0 12
10 個のプロセス 12 5 5 5 10 15
15 個のプロセス 12 5 → 10 5 → 10 5 → 10 15 20 → 25
30 個のプロセス 12 10 10 10 30 40
90 個のプロセス 12 10 → 20 10 → 12 10 → 12 90 100 → 102
100 個のプロセス 12 20 12 12 100 112
パラメータ : JobServers=100

システムは、最初 100 個の使用可能なジョブ・サーバで開始されますが、効果的な目標は 20 個です。使用可能なジョブ・サーバの数が (使用されて) 効果的な目標数まで減少すると、システムは使用可能な数を維持するために、新しいジョブ・サーバを作成し始めます。

  パラメータ 動的な目標 効果的な目標 使用可能 使用中 合計
開始時 100 20 20 100 0 100
50 個のプロセス 100 20 20 50 50 100
80 個のプロセス 100 20 20 20 80 100
90 個のプロセス 100 20 20 20 90 110

このパラメータの変更

管理ポータルの [開始] ページ ([システム管理] > [構成] > [追加設定] > [開始]) で、[JobServers] の行の [編集] を選択します。JOB サーバの数を入力します。

管理ポータルを使用する代わりに、Config.StartupOpens in a new tab クラス (クラス・リファレンスを参照) で、またはテキスト・エディタで CPF を編集することによって ("アクティブな CPF の編集" を参照)、JobServers を変更できます。

FeedbackOpens in a new tab