1つのプロジェクト内に大量のジョブネットを登録し、かつ同時に起動されるジョブネットが同じプロジェクト内に多数存在する場合、ジョブネットの起動がスケジュール時刻より遅れる場合があります。
ジョブスケジューラはプロジェクトごとに、まとまったジョブネットの管理対象として扱っています。特定のプロジェクトにジョブネットを大量に登録することにより、個々のジョブネット、ジョブを検索する際の検索対象範囲が大きくなり、さらに同時に大量のジョブネットが起動された場合、特定の管理簿に大量のアクセスが集中するためです。
大量のジョブネットを登録する場合は、複数のプロジェクトにジョブネットを分散して登録してください。分散して登録することにより、ジョブネット情報の管理簿へのアクセスが分散されるため、スケジュール性能の劣化を防ぐことができます。
ジョブネットの登録量を想定し、スケジュールどおりに問題なくジョブネットが起動されることを検証してください。
例えば、想定されるジョブネットの登録量と起動したい時刻を設定した仮の業務モデルを用意し、スケジュールどおりに問題なくジョブネットが起動できることを事前に検証してください。
[例] 業務モデル
ジョブネット登録数 | 1,000 |
起動予定時刻 | 10:00 |
起動ジョブネット数 | 100 |
上記の業務モデルを実行した結果、ジョブネットの起動が起動予定時刻より遅れた場合、同時刻に起動するジョブネットを複数のプロジェクトに分散して登録するなど、業務モデルを変更して再検証してください。
すでに大量のジョブネットが登録されている場合、プロジェクトごとのジョブネットの登録数、起動予定時刻を確認し、必要に応じてジョブネットを別のプロジェクトへの分散してください。
プロジェクトごとのジョブネットの登録数、起動予定時刻を確認するには、jobschprint -Nコマンドを利用します。
jobschprint -Nコマンドの詳細は、“Systemwalker Operation Manager リファレンスマニュアル”を参照してください。
ジョブネットを別のプロジェクトに移動する場合、以下の考慮が必要です。
jobschmsgeventコマンドでメッセージ事象を発生させることによってジョブネットを起動しているような場合は、jobschmsgeventコマンドのプロジェクト名を見直してください。
グループに登録されたジョブネットを移動する場合は、グループに含まれるジョブネットをすべて複写した後に、グループを再構成してください。
ジョブネットを移動する手順は以下のとおりです。
ジョブネットを、以下のいずれかの方法で他のプロジェクトに複写します。
jobschsetnet -ncopコマンドで複写する
Systemwalker Operation Managerのクライアント画面で、“ジョブネットの複写”を行う
複写元、複写先の先行後続関係にあるジョブネットでメッセージ事象を発生させるようなジョブネットを見直します。また、グループ登録している場合は複写元、複写先のジョブネットのグループを再構成します。
複写元プロジェクトのジョブネットを削除します。
ジョブネットが階層化されている場合は、以下の手順で移動します。
第1階層以下のすべてのジョブネットをjobschprint -rコマンドにより、定義文として任意のファイルに出力します。
jobschsetnetコマンドの引数として1.で出力したファイルを指定し、最下層のジョブネットから順に複写先のプロジェクトへ登録します。
複写元のジョブネットを第1階層から順に削除します。
jobschmsgeventコマンド、jobschsetnetコマンド、jobschprintコマンドの詳細は、“Systemwalker Operation Manager リファレンスマニュアル”を参照してください。