ジョブの同時実行制御機能のご紹介

投稿日: / 更新日:

この記事は2年以上前に書かれたものです。情報が古い可能性があります。

こんにちは!

今回はver. 6.2から追加された機能の、ジョブの同時実行制御機能についてご紹介いたします。

ジョブの同時実行制御とは、ジョブ同士をキューイングし、同時に実行するジョブの数を制御出来る機能です。

例えば、以下のようなケースで活用できます。

  • ファイルI/Oが発生するため、ジョブ同士を排他的に実行したいとき
  • ジョブを実行する環境において、CPUやメモリ、ネットワーク帯域等のリソースに限りがあるとき

1.設定方法

早速、設定方法についてご紹介していきます。

ジョブ同時実行制御キューを作成

同時実行制御をしたいジョブを関連付ける、ジョブ同時実行制御キューを作成します。

ジョブ同時実行制御キューは、ジョブ設定[同時実行制御]ビューから作成します。

 

キューID、キュー名、同時実行可能数(同時に実行したいジョブの数)を設定して作成します。

ジョブ同時実行制御キューにはオーナーロール、オブジェクト権限も設定可能です。

同時実行制御を行いたいジョブにキューを関連付ける

ジョブ同時実行制御キューは、同時実行制御を行いたいジョブに対し、ジョブの作成・変更ダイアログの「制御(ジョブ)」タブで関連付けを行います。

ジョブネット、コマンドジョブ、ファイル転送ジョブ、承認ジョブ、監視ジョブに対してジョブ同時実行制御キューの関連付けが可能です。

 

2.ジョブの同時実行制御を確認してみる

それでは、ジョブ同時実行制御キューを関連付けたジョブがどの様に実行されるか確認してみましょう。

キューに関連付けたジョブは、ジョブ設定[同時実行制御ジョブ一覧]ビューから確認が出来ます。今回はこのJob1~Job3を実行してみます。

これらのジョブを実行すると、ジョブ同時実行制御キューの同時実行可能数(今回は2つ)までの個数のジョブが実行され、それ以外のジョブはキューが開放されるまで(実行中のジョブが終了するまで)待機します。

Job1~Job3を実行中のジョブ履歴[ジョブ詳細]ビューを見てみましょう。

Job1, Job2は「実行中」、Job3は「実行中(キュー待機)」の状態になっています。

「実行中(キュー待機)」は、ジョブが実行可能になるまで待機している状態を表しており、この状態ではまだノード上でジョブは実行されていません。

Job1が終了すると、Job3が「実行中」に遷移します。

ジョブ同時実行制御キュー単位で、ジョブ履歴から同時実行制御の状況を確認することも出来ます。

ジョブ履歴[同時実行制御]ビューから、ジョブ同時実行制御キューを選択すると、ジョブ履歴[同時実行制御状況]ビューに、キューに関連付けたジョブの実行状態が表示されます。

後から実行したジョブは、「実行中(キュー待機)」状態となり、同様にキューが開放されたら順次実行されます。

以下の画面は、「Job1」~「Job3」を実行した後、更にジョブ同時実行制御キュー「Job-Queue」に関連付けたジョブ「Job4」、「Job5」を実行した時のジョブ履歴の状態です。

また、同時実行制御は待ち条件や開始遅延など、ジョブを制御する他の機能とも組み合わせることが出来ます。

例えば、同時実行制御を行うジョブに開始遅延を設定しておき、一定時間キューが開放されなければ終了する…といった制御も可能です。

 

簡単ですが、ご紹介は以上です。

ジョブ機能への理解を深めてより便利に活用しましょう!

 

Hinemos導入はアトミテックにお任せください

見積もりを依頼する

最新情報発信中

Xやメルマガでも、Hinemosの保守、
開発、導入、構築やカスタマイズ等の
お役立ち情報を発信しています。
是非ご登録ください。