概要
MCとRSのキューでロボットが実行待ちする条件や確認方法について以下に示します。
【MCのキュー】
<実行されたロボットがキューで実行待ちになる条件>
実行中のロボット数が「最大同時ロボット数(Max concurrent robots)」に達し、Kappletまたはスケジュールからロボットを新規に実行した場合
※11.1のKappletではMCのキューに格納されませんが、
11.3のKappletsではMCのキューに格納されるように仕様が変更されました
参考:v11.1 Kapplet「最大同時ロボット数」に達した状態で実行されたロボットはMCのキューに入らない
11.3 Kapplet実行時「最大同時ロボット数」に達した場合の挙動
※10.3.0.2以前は以下不具合によりKapletまたはスケジュールから実行されたロボットはRSのキューに格納されます。
参考:Ver.10.3.0.2以前のMCにて「最大キュー格納可能ロボット数(Max queued robots)」が適切に動作しない
<キューに入った後の優先順位>
スケジュールやKappletから実行されMCのキューに入ったロボットは、先にキューに入ったロボットから順に実行されます。
後からキューに入ったロボットに割り込まれる事はありません。
<キューの上限>
MCのキューに上限はありません。
<キューで実行待ち状態のロボットを確認する方法>
MCの「管理(Admin)」タブ>「タスクビュー(Task View)」タブの「ステータス(Status)」列に「QUEUED」と表示されます。
【RSのキュー】
<実行されたロボットがキューで実行待ちになる条件>
実行中のロボット数が「最大同時ロボット数(Max concurrent robots)」に達し、JavaAPI呼び出しでロボットを新規に実行した場合
※以下不具合により、この通りに動作致しません。
参考:API呼び出しでロボットを実行すると、RSのキュー待ちとならず実行に失敗する
※10.3.0.2以前の場合は不具合により以下条件が追加されます。
実行中のロボット数が「最大同時ロボット数(Max concurrent robots)」に達し、Kapletまたはスケジュールからロボットを新規に実行した場合
参考:Ver.10.3.0.2以前のMCにて「最大キュー格納可能ロボット数(Max queued robots)」が適切に動作しない
<キューの上限>
上限を50として、MCの「最大キュー格納可能ロボット数(Max queued robots)」で設定が可能です。
設定方法は以下ナレッジをご参照下さい。
参考:RSで同時実行できるロボット数の変更方法
<キューで実行待ち状態のロボットを確認する方法>
MCの「管理(Admin)」タブ>「RoboServer(RoboServers)」タブ>「キューに格納されたロボット(Queued Robots)」から確認できます。
【その他】
<MC/RSのキューにキューに格納されない条件>
実行中のロボット数が「最大同時ロボット数」に達し、リポジトリから「すぐに実行」やREST、SOAPのHTTPリクエストからロボットを新規に実行した場合
■具体例
以下に実行中のロボット数が「最大同時ロボット数(Max concurrent robots)」に達している状態で、新規にロボットを実行した場合の例を記載します。
<ソフトウェアバージョン情報>
BizRobo! Basic:10.4.0.4
Tomcat:8.5.51
<MCの「リポジトリ(Repository)」タブ>「ロボット(Robots)」タブ>「すぐに実行(Run Now)」から実行>
エラーダイアログに下記メッセージが表示され、ロボットが実行されません。
There are no available slots on cluster 'クラスタ名'
<Kappletもしくはスケジュールで実行>
MCのキューで、RSの「最大同時ロボット数(Max concurrent robots)」に空きができるまで実行を待ちます。
※11.1のKappletでは以下仕様変更に伴いロボットは実行されません。
11.3のKappletsではMCのキューに格納されるように仕様が変更されました
参考:v11.1 Kapplet「最大同時ロボット数」に達した状態で実行されたロボットはMCのキューに入らない
11.3 Kapplet実行時「最大同時ロボット数」に達した場合の挙動
※Ver.10.3.0.2以前では、以下不具合のためRSのキューで実行を待ちます。
参考:Ver.10.3.0.2以前のMCにて「最大キュー格納可能ロボット数(Max queued robots)」が適切に動作しない
<JavaAPI呼び出しで実行>
以下不具合によりJava例外「CapacityExceededException」が発生し、ロボットが実行されません。
参考:API呼び出しでロボットを実行すると、RSのキュー待ちとならず実行に失敗する
<RESTで実行>
RESTリクエスト元へ500エラーと下記を返し、ロボットが実行されません。
There are no available slots on cluster 'クラスタ名'
<SOAPで実行>
OAP リクエスト元へ下記エラーを返し、ロボットが実行されません。
There are no available slots on cluster 'クラスタ名'
区分 | 確認Ver |
仕様 | 10.4.0.4 |